各类开源协议
盡管我在開發(fā)中經常使用開源代碼,但是我對開源協議確實不是很了解,于是我整理了一下資料,記錄一下。
LGPL(GNU Lesser General Public License):是由自由軟件基金會公布的自由軟件許可證。LGPL 協議主要是面向使用C語言以及類C語言。它允許企業(yè)與軟件開發(fā)者使用,或將LGPL授權的軟件集成至他們自己的軟件內(即使該軟件是私有軟件也被允許),同時不會受到Copyleft特性的許可證強制對軟件開源的限制。
GPL(GNU General Public License):是由自由軟件基金會公布的自由軟件許可證。GPL是一個Copyleft許可證,這意味著派生作品只能以相同的許可條款分發(fā),這也意味著商業(yè)軟件不能使用GPL協議的代碼。這與寬松自由軟件許可證有所區(qū)別 ,GPL是第一個普遍使用的Copyleft許可證。GPL授予程序接受人以下權利,或稱“自由”,或稱“copyleft”:
- 基于任何目的,按你的意愿運行軟件的自由(自由之零)。
- 學習軟件如何工作的自由,按你的意愿修改軟件以符合你的計算的自由(自由之一)。可訪問源代碼是此項自由的先決條件。
- 分發(fā)軟件副本的自由,因此你可以幫助你的好友(自由之二)。
- 將你修改過的軟件版本再分發(fā)給其他人的自由(自由之三)。這樣可以讓整個社區(qū)有機會共享你對軟件的改動。可訪問源代碼是此項自由的先決條件。
BSD(Berkeley Software Distribution):1970年代由伯克利加州大學的學生比爾·喬伊開創(chuàng),也被用來代表其派生出的各種包。商業(yè)軟件可以使用,也可以修改使用BSD協議的代碼。主要協議有BSD 3-Clause , BSD 2-Clause
MIT:名字源自麻省理工學院(Massachusetts Institute of Technology, MIT),又稱“X許可協議”(X License)或“X11許可協議”(X11 License)。MIT協議聲明原文如下:被許可人有權利使用、復制、修改、合并、出版發(fā)行、散布、再許可和/或販售軟件及軟件的副本,及授予被供應人同等權利,惟服從以下義務。在軟件和軟件的所有副本中都必須包含以上著作權聲明和本許可聲明。因此商業(yè)軟件可以使用,也可以修改MIT協議的代碼,甚至可以出售MIT協議的代碼。
Apache:是由Apache軟件基金會發(fā)布的,Apache許可證是寬容的,因為它不會強制派生和修改產物使用相同的許可證進行發(fā)布。但它仍然要求對所有未修改的部分應用相同的許可證,并且在每個許可文件中,必須保留再分發(fā)代碼中的任何原始著作權,專利,商標和歸屬通知(不需要包括任何部分的派生作品);并且在每個更改的許可文件中,都必須添加一條通知,說明對該文件進行了更改。如果聲明文本文件作為原始作品發(fā)布的一部分包含在內,則派生作品必須在包含該通知文本文件的可讀副本,可以是文檔或顯示在軟件中。聲明文件的內容不會修改許可證,因為它們僅用于提供信息,并且可以在許可證文本中添加更多屬性聲明,前提是這些聲明不能被理解為修改許可證。修改可能有適當的著作權聲明,并可能為修改提供不同的許可條款。除非另有明確規(guī)定,否則許可證持有者向授權者提交的任何文稿將根據許可證的條款進行,沒有任何條款和條件,但這并不排除與授權者有關的這些貢獻有單獨的協議。主要協議有Apache-2.0
MPL(Mozilla Public License): 商業(yè)軟件可以使用,也可以修改MPL協議的代碼,但修改后的代碼版權歸軟件的發(fā)起者。主要協議有Mozilla Public License 1.1
CDDL (Common Development and Distribution License ):商業(yè)軟件可以使用,也可以修改CDDL協議的代碼
如果有興趣了解更多相關內容,歡迎來我的個人網站看看:瞳孔的個人空間
總結
- 上一篇: 我们如何方便判断我们当前电脑显卡是否支持
- 下一篇: 配置maven仓库 手写maven项目