各种license的介绍,比较全面。原文链接在https://web.liferay.com/community/forums/-/message_boards/message/4775410

什么是License

许多混乱就始于你不知道License到底是什么,到底有什么含义。当你对你的产品使用License时,并不意味着你放弃了任何权利,你依然对其拥有原著作权。License只是授予他们于特定权利来使用你的产品。

License只是把你的作品释放到公有领域,或者给各个拷贝赋予权限。也意味着你放弃了版权收入,别人也没有义务把你列为原作者或贡献者。

开放源代码许可协议更容易为他人作出贡献,而不必寻求特别的许可。它也可以保护你作为原创者的权利,至少确认了你的贡献。它还可以保证你的工作不为别人所剽窃。
GNU General Public License

GNU General Public License (GPL)的可能是开源项目最常用的许可证。GPL赋予和保证了开源项目开发者广泛的权利。基本上,它允许用户合法复制,分发和修改软件。 这意味着你可以:

* 复制软件

复制软件到自己的服务器,客户端的服务器,你自己的电脑,几乎任何你想要的地方,而且没有数量限制。
* 发布软件

发布你想要的软件,例如,在你的网站提供下载链接,刻成光盘,打印出来等等。
* 收取费用

如果你想在向别人提供软件时收费,如设置在别人的网站上或者其他用途时。GPL允许你这么做,但是你必须给客户提供一个GPL副本,告诉他们可以在其他地方得到免费版本。当然最好在此之前,告诉客户,你为什么收费。
* 可以任意修改

如果你想添加或删除功能,没问题。如果想在其他项目中使用部分代码,也是可以的,但是唯一的限制是此项目也必须按GPL发布。

商业软件不能使用GPL协议的代码。
GNU Lesser General Public License

还有另一个GNU License:GNU Lesser General Public License (LGPL)。比起GPL它授予的权限较少。一般来说,LGPL比较适合连接到非GPL或者非开源文件的库文件。由于GPL的规定,使用到部分GPL代码的软件,必须也使用GPL,开发人员不能使用GPL来开发收费软件或者专有软件。LGPL则没有这方面的要求,不要求使用与部分代码相同的 License。

商业软件可以使用,但不能修改LGPL协议的代码。
BSD License

BSD License与其他自由软件License相比,如GPL,限制更少。但是请注意到BSD License两种版本之间的差别:New BSD License/Modified BSD License 和Simplified BSD License/FreeBSD License。它们两者都是于GPL兼容的自由软件License。

New BSD License (”3-clause license”) 可以用于任何作为版权声明和保证许可的免责声明的目的,可以通过无限长的再分发来得以维持,也就是说如果再发布的产品中包含源代码,则在源代码中必须带有原来代码中的BSD协 议。它还有一个特殊限制条款,不用特别的许可就是限制使用派生工作的工作者名字,也就是说不可以用开源代码的作者/机构名字和原来产品的名字做市场推广。

New BSD License和Simplified BSD License的主要区别是,后者忽略了非认可条款。

商业软件可以使用,也可以修改使用BSD协议的代码。
MIT License

MIT是和BSD一样宽松的许可协议,作者只想保留版权,而无任何其他了限制.也就是说,你必须在你的发行版里包含原许可协议的声明,无论你是以二进制发布的还是以源代码发布的。

* 你可以使用,复制和修改软件
* 你可以免费使用软件或出售
* 唯一的限制是,它是必须附有MIT授权协议

商业软件可以使用,也可以修改MIT协议的代码,甚至可以出售MIT协议的代码。
Mozilla Public License 1.1 (MPL)

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

商业软件可以使用,也可以修改MPL协议的代码,但修改后的代码版权归软件的发起者。
Common Development and Distribution License

CDDL(Common Development and Distribution License,通用开发与销售许可)开源协议,是MPL(Mozilla Public License)的扩展协议,它允许公共版权使用,无专利费,并提供专利保护,可集成于商业软件中,允许自行发布许可。

商业软件可以使用,也可以修改CDDL协议的代码。
Apache License

Apache Licence是著名的非盈利开源组织Apache采用的协议。该协议和BSD类似,同样鼓励代码共享和尊重原作者的著作权,同样允许代码修改,再发布 (作为开源或商业软件)。需要满足的条件:

* 需要给代码的用户一份Apache License。
* 如果你修改了代码,需要在被修改的文件中说明。
* 在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明。
* 如果再发布的产品中包含一个Notice文件,则在Notice文件中需要带有Apache License。你可以在Notice中增加自己的许可,但不可以表现为对Apache License构成更改。

Apache Licence也是对商业应用友好的许可。使用者也可以在需要的时候修改代码来满足需要并作为开源或商业产品发布/销售。

商业软件可以使用,也可以修改使用Apache协议的代码。
Eclipse Public License

EPL是一个与CPL相类似的许可证,任何扩展自Eclipse源码的代码也必须是开源的。
Creative Commons

Creative Commons(CC)的许可证不太开放源代码授权,它们通常用于设计项目。 CC许可证有着宽广的定义,每个定义都会授予一定的权利。它有四个基本部分,可以单独或者组合使用。下面是部分概述:

* 署名

作者必须是作品的原创者。 除此之外,作品可以修改,分发,复制和以其他方式使用。
* 相同方式共享

工作可以修改,分发等等,但必须在一个许可证下。
* 非商业

可以修改,分发等,但不用于商业目的。 关于什么是“商业”,说法比较含糊(没有提供明确的定义),因此您可能需要在自己的项目中澄清这一点。
* 禁止修改

这意味着您可以复制和分发许可工作,但你不能以任何方式修改,或在原有的基础开发。

商业软件的使用要遵从CC协议的具体规定,最严格的许可证将是“署名,非商业,不能修改”的授权。这意味着你可以自由共享的工作,但不能改变它,你必须把它归功于原创者。
Common Public License 1.0

Common许可证有一些细节性的规定值得参考:

* 明确了专利授权。一般的开源软件都明确源代码的版权人将自己的修改权、复制权等版权权利向公众许可,但保留署名权,而Common许可证在此基础上还明确假如源代码中含有专利权,源代码专利权人将复制、使用的专有权利向公众许可。
* 规定可以将源代码及修改过的源代码与其他类型的不受本许可证约束的代码结合,以新产品的形式发布,只要其中经该许可证获得的源代码及修改过的源代码能按该许可证的要求发布即可。
* 细化了该许可证终止的情形,包括发生专利侵权诉讼。
* 明确了一个独立承担责任的原则,就是假如按该许可证使用源代码的使用者将获得的源代码应用于商业使用,那么他就要对在商业应用中出现的由于使用该源代码程序而产生的侵权诉讼承担完全责任。这一条规定是比较特殊的,绝大多数开源软件许可证都不这么要求。

商业软件可以使用,也可以修改Common协议的代码,但要承担代码产生的侵权责任。

各种License介绍相关推荐

  1. 风河产品license介绍(Wind River Product Licensing video)

    https://knowledge.windriver.com/?title=en-us/010_Installation_%26_Licensing/010/020/000_Wind_River_P ...

  2. 【转】各种License介绍

    什么是License 许多混乱就始于你不知道License到底是什么,到底有什么含义.当你对你的产品使用License时,并不意味着你放弃了任何权利,你依然对其拥有原著作权.License只是授予他们 ...

  3. 源代码license介绍

    许多开发者和设计者希望把他们的作品作为开源项目共享,他们希望其他人能够利用和共享他们的代码. 而各种开源社区就是因为这个原因而充满活力.开源软件可以用于你能想象得到的任何应用程序,许多web设计人员使 ...

  4. 常见的License介绍

    什么是License 许多混乱就始于你不知道License到底是什么,到底有什么含义.当你对你的产品使用License时,并不意味着你放弃了任何权利,你依然对其拥有原著作权.License只是授予他们 ...

  5. 将SMILES转化为结构式的工具--SMILESDrawer介绍

    转载 我们知道,要在网页中显示专业的图形, 数学公式可以使用MathJax库, 化学方程可以使用mhchem库,这两者都是Javascript代码写的程序库, 那么,如果想显示化学结构式,  是不是也 ...

  6. RouterOS-注册及申请license

    一.说明 本文相当于介绍如何在购物网站注册并买一个东西. 二.注册登录 2.1 访问官网 https://mikrotik.com/download 2.2 注册账号 [登录官网]->[Acco ...

  7. 开源(Open Source)那些事儿 (一)

    景 最近有幸参与了王克伟的开源项目iToday,详情可以参考 我在Windows嵌入式系统上的一个绚丽用户界面开源项目(iToday).克伟的号召力超人,Q群一下子就爆满200人.如果扩容了,大家有兴 ...

  8. 动手开发自己的第一个 composer 包

    原文:http://blog.jayxhj.com/2016/05/basic-composer-package-development/ composer 是 PHP 的依赖管理工具,本篇文章就来说 ...

  9. cesium js 路径_[CesiumJS]Cesium入门3 – Cesium目录框架结构

    app目录 下载官网上的文件,我们能看到以下CesiumJS库结构: Source/: Cesium应用程序代码及数据 ThirdParty/:外部依赖库,不同于Cesium的第三方库 LICENSE ...

最新文章

  1. Linux_LAMP 最强大的动态网站解决方案
  2. Spring Cloud构建微服务架构:服务消费(Feign)【Dalston版】
  3. Python3 数字运算
  4. 盘点程序员最喜欢的15个网站
  5. [Java基础]IO流概述和分类
  6. CF183D-T-shirtx【dp,贪心】
  7. 初中数学抽象教学的案例_初中八年级数学上册教学视频汇总
  8. 搞懂webdriver的底层原理,才敢说自己懂自动化!
  9. javasocket编程面试题,小白也能看明白
  10. 爬虫小程序 - 翻译君
  11. pycharm英语怎么读_pycharm快捷键翻译
  12. linux中使用U盘拷贝
  13. 去除网页腾讯 优酷 爱奇艺右上角logo水印
  14. 夜神安卓模拟器怎么设置代理
  15. 机器视觉系列(五)——镜头部分
  16. Halcon DrawRegion()后会阻塞直到右键按下,请问如何主动取消绘制区域
  17. html中打印部分内容,设置网页打印区域
  18. UCI 机器学习数据集(分类)
  19. 文献管理软件Zotero配置及使用
  20. python模糊神经网络预测_MATLAB模糊神经网络的预测算法--预测水质

热门文章

  1. 盘点WinCE6.0下的小游戏
  2. 188.武士风度的牛
  3. 计算器(C++QT)——有全部代码哦
  4. 2、虚拟机的快照与克隆
  5. 51单片机的新手入门前所有疑问整理
  6. 【网络爬虫教学】一分钟带你快速寻找JS加密入口(二)
  7. DevOps实战:版本管理实践指南
  8. Python使用Cv2模块识别验证码
  9. SaaSBase:微宏科技是什么?
  10. 高质量实时渲染课程笔记(三)— 实时阴影渲染1(Shadow Mapping、PCF、PCSS)