网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.J2ME MIDP 提供的最重要的图形元.
.Java C/S mode --Client.
.使用Java API压缩和解压缩数据.
.J2ME蓝牙实战入门.
.通过内部类的一个例子展示java中.
.Sun授权ASEC-Java培训中心(表).
.实战Java用户界面本地化.
.Java核心代码例程之:HelloWorld.
.WebLogic 6.1的LOG文件.
.JAVA入门教程:第一章.
.Spring AOP之Hello World.
.Java编程基础:EJB专用术语的详细.
.tomcat深入??内部结构描述.
.JDBC基础教程之驱动设置.
.Java编程讨论:关于什么叫面向接.
.转-关于多线程.
.浅议Web服务.
.struts构建文件上传(七).
.Java 编程技术中汉字问题的分析及.
.阴阳历算法(转).

java开源项目研究 3.许可协议介绍

发表日期:2008-1-5



    假如你只是想学习使用一下开源项目,那么你可以跳过本节(了解一下更好^_^),但是假如你想在自己的产品(不管是开源的还是商业的)中集成开源项目,那么你必须了解许可协议。   

    开源项目的License可以分为三大类:

    OSI-Approved Open Source:被开放源码组织(www.opensource.org)所批准的开放源码授权协议。像大家经常看到的Apache,GPL,LGPL,MIT Licence,都属于OSI-Approved的授权协议,OSI 的要求之一是二进制文件和源代码的自由发放。

    Other/Proprietary License:其他的,私有的授权协议。指软件作者提供源代码,但是对软件的分发和发布有其他的限制。

    Public Domain:公共域授权。将软件授权为公共域,表示作者完全放弃版权,任何人都可以随意使用。

    大部分开源工程都属于OSI-Approved Open Source,下面对常见的License做简单的介绍:

    对商业友好的License,这些License虽然保留版权申明,但是不但免费修改、免费重新发布,而且答应商业使用,答应商业修改后不公布修改的软件代码(拿到商用产品中就不用担心了^_^)。这些License包括:Apache License,Artistic License,BSD License,Python License,XWindows License,Zope License等。

    GPL License,答应免费修改、免费重发布,但要求修改代码必须也遵守GPL。这样非GPL License的项目就不能使用GPL License的源码。这种授权方式大大限制了从开源中牟利的手段,因此是对商业不友好的授权。GPL授权的项目非凡多,包括有Linux、gnome、kde、gcc等。LGPL License对比GPL较为宽松,答应商业代码链接LGPL项目的库。

    MPL License,答应免费重发布、免费修改,但要求修改后的代码版权归软件的发起者。这种授权维护了商业软件的利益,,它要求基于这种软件得修改无偿贡献版权给该软件。这样,围绕该软件得所有代码得版权都集中在发起开发人得手中。但MPL是答应修改,无偿使用得。MPL软件对链接没有要求。

    还有部分开源项目有多重协议,比如mysql(闻名的开源数据库)同时拥有Commercial License和GPL License,假如是GPL项目,那么可以免费使用MySQL,但是在商业软件中使用MySQL则要购买commercial license。

    总之,当你预备在商用项目中使用开源项目,就需要仔细阅读它的License,看是能否能够免费使用。(不能免费,估计老板就不同意了^_^)从商用的角度看,当然是选择对商业友好的License比较好,比如Apache License,BSD License,MPL,另外LGPL也是可以使用的。在我们关注的Java领域,选择余地还是比较大的(在以后的内容中会见到)。



联系作者: dawanjia@126.com
上一篇:Java开源缓存系统的介绍 人气:1069
下一篇:java开源项目研究 2. 开源的历史 人气:512
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐