一直在用开源,软件许可协议你注意了咩......

作为一位经常要开发各种业务的开发人员来说,为了要完成项目的进度,经常会去下载对应的开源工具来协助开发。正所谓站在巨人的肩膀上才可以看的远嘛,但是有些肩膀可以站,有些肩膀就不是随意可以站的哦,在这个阳光明媚的午后,就给大家分享一个常用的6种开源协议的文章吧。


1. GPL

    GPL协议的主要内容是只要在一个软件中使用GPL的产品,(其中“使用”指的是类库调用,修改后的代码或者衍生代码),则该软件产品必须采用GPL协议,即必须也是开源和免费的。

    由于GPL严格要求使用了GPL类库的软件产品必须使用GPL协议,对于使用GPL协议的开源代码,商业软件或者对代码有保密要求的部门就不适合将其作为类库和二次开发。


2. BSD

    BSD开源协议是一个给于使用者很大自由的协议。可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。当你发布使用了BSD协议的代码,或者以BSD协议代码为基础做二次开发自己的产品时,需要满足三个条件:

 如果再发布的产品中包含源代码,则在源代码中必须带有原来代码中的BSD协议。

 如果再发布的只是二进制类库/软件,则需要在类库/软件的文档和版权声明中包含原来代码中的BSD协议。

 不可以用开源代码的作者/机构名字和原来产品的名字做市场推广。


3. MIT

MIT许可证之名源自麻省理工学院,又称「X条款」(X License)或「X11条款」(X11 License。MIT的主要约束如下:

被授权人有权利使用、复制、修改、合并、出版发行、散布、再授权及贩售软件及软件的副本。

被授权人可根据程式的需要修改授权条款为适当的内容。

在软件和软件的所有副本中都必须包含版权声明和许可声明。


4. Mozilla

    允许免费重发布、免费修改,但要求修改后的代码版权归软件的发起者。这种授权维护了商业软件的利益,它要求基于这种软件的修改无偿贡献版权给该软件。


5. Apache

    Apache Licence是著名的非盈利开源组织Apache采用的协议。Apache协议的要求如下:

如果你修改了Apache许可的代码,需要在被修改的文件中说明。

在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明。

如果再发布的产品中包含一个Notice文件,则在Notice文件中需要带有Apache Licence。你可以在Notice中增加自己的许可,但不能改变本产品仍然是有Apache协议授权的。


6. LGPL

    宽松公共许可证(Lesser General Public License)或库通用公共许可证(Library General Public License)。

基于 LGPL 的软件也允许商业化销售,但不允许封闭源代码。

如果您对遵循 LGPL 的软件进行任何改动和/或再次开发并予以发布,则您的产品必须继承 LGPL 协议,不允许封闭源代码。但是如果您的程序对遵循 LGPL 的软件进行任何链接、调用而不是包含,则允许封闭源代码。


下面的图片,则更好地表示了六种开源协议的权利和义务。


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 目前开源的协议可以参考GNU组织的开源许可协议:[具体参考链]。(http://www.gnu.org/licen...
    磨砺营IT阅读 1,274评论 0 3
  • 首先借用有心人士的一张相当直观清晰的图来划分各种协议:流行的开源许可证的区别 以下是上述协议的简单介绍: BSD开...
    真笨笨鱼阅读 512评论 2 1
  • Apache v2 License Apache Licence是著名的非盈利开源组织Apache采用的协议。该协...
    范德萨范德萨范德萨阅读 1,073评论 0 0
  • 亲爱的老爸: 你好吗,今天是双十二,不知道商家们又搞什么鬼,路上人满为患。 中午和WC、松松吃饭,聊了挺多的。转眼...
    老爸我很想你阅读 258评论 0 0
  • 从今天开始写下去。 久不动笔,心、脑、手、笔都麻木迟钝了,日复一日过着同样的生活,也许是因为忙碌,也许...
    doublesong阅读 132评论 0 0