通用开源和发行许可证(CDDL)是由太阳微系统公司(Sun Microsystems)发行的开源许可证 , 旨在用于替换 Sun 公共许可证 (SPL , Sun Public License) 。CDDL 许可证被 Sun 公司(现在已被甲骨文公司收购)视作 SPL 的第二版本 , 此外 CDDL 许可证受到了 Mozilla 公共许可证(MPL , Mozilla Public License)的启发 。Sun 公司一直以来都使用 SPL 许可证发行它的自由软件(free software)/开源项目 , 直到 2004 年才切换到使用 CDDL 许可证 。CDDL 许可证通常被称作 MPL 的清洁版本(cleaned up version) , 旨在促进可重用性(reusability) 。
你可以自由地复制(再制造)和分发 CDDL 下软件的任何原始或衍生作品 , 但你不得删除或修改软件中所包含的任何版权、专利或商标声明 。你还必须保留所有许可证声明和属于所有贡献者与初始开发者的描述性信息 。
当你以可执行形式(除源码外的其他任何形式)分发软件时 , 你需要将源代码也置于 CDDL 之下 。可执行形式可以以 CDDL 或任何与 CDDL 兼容的许可证发布 。
源码中必须包括你的贡献(对原始软件的既有文件和新添文件的内容的增加、修改和删除) 。这意味着 , 如果添加的内容在不包含原始代码的独立文件之中 , 那么就不必将之置于 CDDL 下进行发布 。如果你愿意 , 你可以放入 CDDL 下 , 但这不属于你的义务 。
此外 , 不管你分发什么源代码都必须包含 CDDL 的副本 。对于你所做的每一个修改(modification) , 你都必须在所修改的文件内写明自己是修改者 , 以告知他人 。
Eclipse 公共许可证(EPL)
Eclipse 公共许可证(EPL , Eclipse Public License)是由 Eclipse 基金会(Eclipse Foundation)开发的开源许可证 , 它源自通用公共许可证(CPL , Common Public License) 。现在使用 EPL 许可证的 Eclipse codebase 以前都是用 CPL 许可证 。
EPL 许可证是 copyleft 许可证 。如果你修改了基于 EPL 的组件并将其作为程序的一部分、并以源码的形式分发 , 则需要在 EPL 许可证下公开修改后的代码 。如果你以目标代码(object code)的形式发布 , 则必须声明可根据需要将源码提供给接收者 , 同时你也必须共享请求源码的方法 。
Eclipse 基金会(Eclipse Foundation)明确指出 , 在他们看来 , 与 Eclipse 插件「仅交互或互操作」是不会导致你的代码变为该插件的衍生作品(derivative work)的 。
如果你重新分发(redistribute)带有 EPL 组件的程序 , 就必须包含完整的许可证文本和版权信息 。
如果有企业在其商业产品中使用了 TA 的组件 , 那么 EPL 许可证可以保护作者免受潜在的诉讼和损失 。此外 , EPL 许可还提供了专利授权 。
MIT 许可证
MIT 是最宽松的自由软件许可证之一 。基本上 , 你只需要添加原始 MIT 许可证和版权声明副本(copy of the original MIT license and copyright notice) , 就可以自由使用基于 MIT 许可证的软件组件了 。它的简单性使其在开发这中间得以广泛采用 。
了解你的开源许可证
或向法官解释
如果你读到这里 , 你就会明白制订开源许可证并非出于胆小 。
但是考虑到几乎所有软件开发者都严重依赖开源组件这一事实 , 对开源许可证有所了解 , 并清楚流行的许可证之间的异同是十分重要的 。
我们希望这篇文章能让你更快发现许可证内潜藏的地雷 。
原题:Open Source Licenses Explained
链接:https://resources.whitesourcesoftware.com/recommended/open-source-licenses-explained
作者:Ayala Goldstein
【一文读懂常用开源许可证】
推荐阅读
- 抽水马桶是如何工作的?一文看懂虹吸原理
- 消毒湿巾真的好吗?这几件常用物品更伤身体
- 在常用Linux操作系统中安装VMware Tools
- 普洱茶冲泡方法,普洱茶常用的冲泡方法如下
- 家庭凉茶配方,黄柏的功效与作用及常用配方
- 奶茶介绍,常用饮发介绍
- MySQL常用函数
- 黑客常用dos命令整理
- 内网域实战渗透常用命令总结
- 一文讲弄懂什么是vlan、三层交换机、网关、子网掩码