宽松开源许可证的崛起意味着什么?

局长
 局长
发布于 2016年11月17日
收藏 10

为什么像 GNU GPL 这样的限制性许可证越来越不受青睐。

“如果你用了任何开源软件, 那么你软件的其他部分也必须开源。”这是微软前 CEO 巴尔默 2001 年说的,尽管他说的不对,还是引发了人们对自由软件的 FUD (恐惧, 不确定和怀疑fear, uncertainty and doubt)。大概这才是他的意图。

对开源软件的这些 FUD 主要与开源许可有关。现在有许多不同的许可证,当中有些限制比其他的更严格(也有人称“更具保护性”)。诸如 GNU 通用公共许可证 (GPL) 这样的限制性许可证使用了 copyleft 的概念。copyleft 赋予人们自由发布软件副本和修改版的权力,只要衍生工作保留同样的权力。bash 和 GIMP 等开源项目就是使用了 GPL(v3)。还有一个 AGPL( Affero GPL) 许可证,它为网络上的软件(如 web service)提供了 copyleft 许可。

这意味着,如果你使用了这种许可的代码,然后加入了你自己的专有代码,那么在一些情况下,整个代码,包括你的代码也就遵从这种限制性开源许可证。Ballmer 说的大概就是这类的许可证。

但宽松许可证不同。比如,只要保留版权声明和许可声明且不要求开发者承担责任,MIT 许可证允许任何人任意使用开源代码,包括修改和出售。另一个比较流行的宽松开源许可证是 Apache 许可证 2.0,它还包含了贡献者向用户提供专利授权相关的条款。使用 MIT 许可证的有 JQuery、.NET Core 和 Rails ,使用 Apache 许可证 2.0 的软件包括安卓,Apache 和 Swift。

两种许可证类型最终都是为了让软件更有用。限制性许可证促进了参与和分享的开源理念,使每一个人都能从软件中得到最大化的利益。而宽松许可证通过允许人们任意使用软件来确保人们能从软件中得到最多的利益,即使这意味着他们可以使用代码,修改它,据为己有,甚至以专有软件出售,而不做任何回报。

开源许可证管理公司黑鸭子软件的数据显示,去年使用最多的开源许可证是限制性许可证 GPL 2.0,份额大约 25%。宽松许可证 MIT 和 Apache 2.0 次之,份额分别为 18% 和 16%,再后面是 GPL 3.0, 份额大约 10%。这样来看,限制性许可证占 35%,宽松许可证占 34%,几乎是平手。

但这份当下的数据没有揭示发展趋势。黑鸭子软件的数据显示,从 2009 年到 2015 年的六年间,MIT 许可证的份额上升了 15.7%,Apache 的份额上升了 12.4%。在这段时期,GPL v2 和 v3 的份额惊人地下降了 21.4%。换言之,在这段时期里,大量软件从限制性许可证转到宽松许可证。

这个趋势还在继续。黑鸭子软件的最新数据显示,MIT 现在的份额为 26%,GPL v2 为 21%,Apache 2 为 16%,GPL v3 为 9%。即 30% 的限制性许可证和 42% 的宽松许可证 — 与前一年的 35% 的限制许可证和 34% 的宽松许可证相比,发生了重大的转变。对 GitHub 上使用许可证的调查研究证实了这种转变。它显示 MIT 以压倒性的 45% 占有率成为最流行的许可证,与之相比,GPL v2 只有 13%,Apache 11%。

引领趋势

从限制性许可证到宽松许可证,这么大的转变背后是什么呢? 是公司害怕如果使用了限制性许可证的软件,他们就会像巴尔默说的那样,失去自己私有软件的控制权了吗? 事实上,可能就是如此。比如, Google 就禁用了 Affero GPL 软件

Instructional Media + Magic 的主席 Jim Farmer,是一个教育开源技术的开发者。他认为很多公司为避免法律问题而不使用限制性许可证。“问题就在于复杂性。许可证的复杂性越高,被他人因为某行为而告上法庭的可能性越高。高复杂性更可能带来诉讼”, 他说。

他补充说,这种对限制性许可证的恐惧正被律师们驱动着,许多律师建议自己的客户使用 MIT 或 Apache 2.0 许可证的软件,并明确反对使用 Affero 许可证的软件。

他说,这会对软件开发者产生影响,因为如果公司都避开限制性许可证软件的使用,开发者想要自己的软件被使用,就更会把新的软件使用宽松许可证。

但 SalesAgility(开源 SuiteCRM 背后的公司)的 CEO Greg Soper 认为这种到宽松许可证的转变也是由一些开发者驱动的。“看看像 Rocket.Chat 这样的应用。 开发者本可以选择 GPL 2.0 或 Affero 许可证,但他们选择了宽松许可证”,他说。“这样可以给这个应用最大的机会,因为专有软件厂商可以使用它,不会伤害到他们的产品,且不需要把他们的产品也使用开源许可证。这样如果开发者想要让第三方应用使用他的应用的话,他有理由选择宽松许可证。”

Soper 指出,限制性许可证致力于帮助开源项目获得成功,方式是阻止开发者拿了别人的代码、做了修改,但不把结果回报给社区。“Affero 许可证对我们的产品健康发展很重要, 因为如果有人利用了我们的代码开发,做得比我们好, 却又不把代码回报回来, 就会扼杀掉我们的产品,” 他说。“ 对 Rocket.Chat 则不同, 因为如果它使用 Affero, 那么它会污染公司的知识产权, 所以公司不会使用它。不同的许可证有不同的使用案例。”

曾在 Gnome、OpenOffice 工作过,现在是 LibreOffice 的开源开发者的 Michael Meeks 同意 Jim Farmer 的观点,认为许多公司确实出于对法律的担心,而选择使用宽松许可证的软件。“copyleft 许可证有风险, 但同样也有巨大的益处。 遗憾的是人们都听从律师的,而律师只是讲风险,却从不告诉你有些事是安全的。”

巴尔默发表他的错误言论已经过去 15 年了, 但它产生的 FUD 还是有影响 — 即使从限制性许可证到宽松许可证的转变并不是他的目的。

来自:Linux.Cn

via:http://www.cio.com/article/3120235/open-source-tools/what-the-rise-of-permissive-open-source-licenses-means.html

作者:Paul Rubens 译者:willcoderwang 校对:jasminepeng

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:宽松开源许可证的崛起意味着什么?
加载中

精彩评论

开源春哥
开源春哥
GPL系列的开源软件大都是基础软件。MIT系列的宽松许可更适合于应用层的软件。
桔子
桔子
gpl还是的支持,尤其天朝伸手党泛滥
struct
struct

引用来自“首席李兰春黛”的评论

GPL的存在就是为了防止开源软件被某商业公司 据为己有,然后另起炉灶去害人。
GPL 并不能防止软件被商业公司据为己有,也不能防止另起炉灶。
Java 是基于 GPL 协议开源的,但这并不能阻止 Oracle 将 Java 据为己有。
Linux 是基于 GPL 协议开源的,但这并不能阻止各种公司、组织另起炉灶,各种 Linux 发行版大行其道。
一个合适的开源协议加一个统一的非营利性组织才是关键。
Linux 内核没有分裂很大程度上得益于 Linux 基金会,大家都加入 Linux 基金会,争取自己的发言权,从而避免另起炉灶。
javasql
javasql
基础软件GPL开源是很合适的,免得Linux等被微软这类公司“无耻”利用。
math715
math715
目前是新的基础软件越来越少,应用软件越来越多.相对而言,应用软件使用宽松协议更容易被接受,而基础软件做为基础,不让其受控于某一公司或组织更好.
应该对采用的协议软件进行分类, 从而让更加准确发现问题的根源.

最新评论(20

wkgcass
wkgcass

引用来自“首席李兰春黛”的评论

GPL的存在就是为了防止开源软件被某商业公司 据为己有,然后另起炉灶去害人。

引用来自“struct”的评论

GPL 并不能防止软件被商业公司据为己有,也不能防止另起炉灶。
Java 是基于 GPL 协议开源的,但这并不能阻止 Oracle 将 Java 据为己有。
Linux 是基于 GPL 协议开源的,但这并不能阻止各种公司、组织另起炉灶,各种 Linux 发行版大行其道。
一个合适的开源协议加一个统一的非营利性组织才是关键。
Linux 内核没有分裂很大程度上得益于 Linux 基金会,大家都加入 Linux 基金会,争取自己的发言权,从而避免另起炉灶。

引用来自“eechen”的评论

恰恰相反,你举的Java和Linux这两个都是GPL防止其他厂商另起炉灶的例子。
首先,Java是SUN开源的产品,Oracle收购SUN后Java属于Oracle维护的开源产品。
好了,除了Oracle的JDK/OpenJDK,还有其他厂商(IBM?)另起炉灶的发布的JDK比原始JDK更通用的么?

然后再说Linux,不管哪个发行版,采用的都是标准统一的Linux内核,甚至包括Android,这就是为什么Nginx/PHP/MySQL这些Linux软件可以很轻松的交叉编译到Android平台上。比如我编译的ARM架构Linux版PHP7 ( #PHPDroid# ),同一个二进制文件,既能在Raspbian上跑,也能在Android上跑。

简而言之,就是你能找到一个新的JDK分支或者Linux内核分支么?
有人这么干过,那就是Google。
Google曾经试图把Android使用的Linux内核从Linux官方主干中分离出来,结果迫于压力,回归了。
再者,Google在Android上开发不兼容标准JVM的虚拟机破坏Java生态,它也做到了。
哈哈。

引用来自“struct”的评论

你看,你和我表达的是一个意思吧。
Java 是基于 GPL 协议开源的,但还是被谷歌分裂了。
谷歌试图在 Android 上分裂 Linux 内核,结果迫于 Linux 基金会的压力,最终放弃了。

引用来自“eechen”的评论

你智商需要充值.
Android只不过是分裂了Java这门语言的生态,开发Android应用的就知道:
import java.io.File; //这个还得依赖Oracle JDK/OpenJDK
import android.webkit.WebView; //这个才是Android上的虚拟机提供的功能
了解了没,Android开发依旧依赖标准Java虚拟机,但其基于Java语言搞得新的API分裂了Java开发生态(导致代码不通用).

还有,软粉得了,不要微软一加入Linux基金会,就三句话不离,搞得好像Linux基金会因为微软而荣耀似的.

引用来自“struct”的评论

放你他妈逼的,狗屁,少你妈逼给劳资扣软粉的帽子,提 Linux 基金会也他妈逼的成软粉了?你他妈逼真能扯,不是老子想爆粗口,老子最烦的就是某些狗逼给人老子扣帽子。
素质真感人
冰鸟
冰鸟
净特么扯淡,选择宽松许可证的项目越来越多,最重要的原因是因为现在github上作为基础库的项目越来越多,例如各种框架,实现一些以前没有提供但现在又十分必要的功能的代码库等等,如此而已。基于这些项目的应用性质,它们所提供的功能,这些项目必然不能选择用gpl之类的严格许可证。他们本来就是一轮子,不能因为用它造一车就必须把整个车的生产线细节全部公布出去啊。使用gpl的基本上都是因为它本来就是一车,其他人的修改,相当于对这车的改装,跟官方备案一下是应该的。
风华神使
风华神使

引用来自“桔子”的评论

gpl还是的支持,尤其天朝伸手党泛滥
实事求是地讲,该 GPL 的还是要 GPL
struct
struct

引用来自“首席李兰春黛”的评论

GPL的存在就是为了防止开源软件被某商业公司 据为己有,然后另起炉灶去害人。

引用来自“struct”的评论

GPL 并不能防止软件被商业公司据为己有,也不能防止另起炉灶。
Java 是基于 GPL 协议开源的,但这并不能阻止 Oracle 将 Java 据为己有。
Linux 是基于 GPL 协议开源的,但这并不能阻止各种公司、组织另起炉灶,各种 Linux 发行版大行其道。
一个合适的开源协议加一个统一的非营利性组织才是关键。
Linux 内核没有分裂很大程度上得益于 Linux 基金会,大家都加入 Linux 基金会,争取自己的发言权,从而避免另起炉灶。

引用来自“eechen”的评论

恰恰相反,你举的Java和Linux这两个都是GPL防止其他厂商另起炉灶的例子。
首先,Java是SUN开源的产品,Oracle收购SUN后Java属于Oracle维护的开源产品。
好了,除了Oracle的JDK/OpenJDK,还有其他厂商(IBM?)另起炉灶的发布的JDK比原始JDK更通用的么?

然后再说Linux,不管哪个发行版,采用的都是标准统一的Linux内核,甚至包括Android,这就是为什么Nginx/PHP/MySQL这些Linux软件可以很轻松的交叉编译到Android平台上。比如我编译的ARM架构Linux版PHP7 ( #PHPDroid# ),同一个二进制文件,既能在Raspbian上跑,也能在Android上跑。

简而言之,就是你能找到一个新的JDK分支或者Linux内核分支么?
有人这么干过,那就是Google。
Google曾经试图把Android使用的Linux内核从Linux官方主干中分离出来,结果迫于压力,回归了。
再者,Google在Android上开发不兼容标准JVM的虚拟机破坏Java生态,它也做到了。
哈哈。

引用来自“struct”的评论

你看,你和我表达的是一个意思吧。
Java 是基于 GPL 协议开源的,但还是被谷歌分裂了。
谷歌试图在 Android 上分裂 Linux 内核,结果迫于 Linux 基金会的压力,最终放弃了。

引用来自“eechen”的评论

你智商需要充值.
Android只不过是分裂了Java这门语言的生态,开发Android应用的就知道:
import java.io.File; //这个还得依赖Oracle JDK/OpenJDK
import android.webkit.WebView; //这个才是Android上的虚拟机提供的功能
了解了没,Android开发依旧依赖标准Java虚拟机,但其基于Java语言搞得新的API分裂了Java开发生态(导致代码不通用).

还有,软粉得了,不要微软一加入Linux基金会,就三句话不离,搞得好像Linux基金会因为微软而荣耀似的.

引用来自“struct”的评论

放你他妈逼的,狗屁,少你妈逼给劳资扣软粉的帽子,提 Linux 基金会也他妈逼的成软粉了?你他妈逼真能扯,不是老子想爆粗口,老子最烦的就是某些狗逼给人老子扣帽子。

引用来自“eechen”的评论

你自己都发现自己编不下去了,就爆粗了.
拿两个GPL的成功案例来说GPL失败.
是你逻辑有问题还是你想颠倒黑白是非忽悠人呢?
我不是那么好忽悠的哟.
我说 GPL 失败了吗?
我只是说 GPL 协议不能防止软件分裂,只要分裂后的软件依然遵循 GPL 协议就是合法的。
GPL 协议也不能防止公司将软件据为己有,即使软件采用 GPL 协议发布,公司也可以不让其他人或公司参与软件的开发和维护,你可以再分裂一个版本出来,但两个终究不是同一个版本。
这时候软件基金会的作用就凸显出来了,软件基金会可以从中调解,基金会成员可以商议问题的解决方案。
开源协议和软件基金会是相辅相成的(包括但不限于 GPL 协议,包括但不限于 Linux 基金会)。
还有,你少他娘的转移话题,你以为你给老子扣个软粉的帽子,自己就他妈逼高尚无比了?自己就是真理的代言人了?
eechen
eechen

引用来自“首席李兰春黛”的评论

GPL的存在就是为了防止开源软件被某商业公司 据为己有,然后另起炉灶去害人。

引用来自“struct”的评论

GPL 并不能防止软件被商业公司据为己有,也不能防止另起炉灶。
Java 是基于 GPL 协议开源的,但这并不能阻止 Oracle 将 Java 据为己有。
Linux 是基于 GPL 协议开源的,但这并不能阻止各种公司、组织另起炉灶,各种 Linux 发行版大行其道。
一个合适的开源协议加一个统一的非营利性组织才是关键。
Linux 内核没有分裂很大程度上得益于 Linux 基金会,大家都加入 Linux 基金会,争取自己的发言权,从而避免另起炉灶。

引用来自“eechen”的评论

恰恰相反,你举的Java和Linux这两个都是GPL防止其他厂商另起炉灶的例子。
首先,Java是SUN开源的产品,Oracle收购SUN后Java属于Oracle维护的开源产品。
好了,除了Oracle的JDK/OpenJDK,还有其他厂商(IBM?)另起炉灶的发布的JDK比原始JDK更通用的么?

然后再说Linux,不管哪个发行版,采用的都是标准统一的Linux内核,甚至包括Android,这就是为什么Nginx/PHP/MySQL这些Linux软件可以很轻松的交叉编译到Android平台上。比如我编译的ARM架构Linux版PHP7 ( #PHPDroid# ),同一个二进制文件,既能在Raspbian上跑,也能在Android上跑。

简而言之,就是你能找到一个新的JDK分支或者Linux内核分支么?
有人这么干过,那就是Google。
Google曾经试图把Android使用的Linux内核从Linux官方主干中分离出来,结果迫于压力,回归了。
再者,Google在Android上开发不兼容标准JVM的虚拟机破坏Java生态,它也做到了。
哈哈。

引用来自“struct”的评论

你看,你和我表达的是一个意思吧。
Java 是基于 GPL 协议开源的,但还是被谷歌分裂了。
谷歌试图在 Android 上分裂 Linux 内核,结果迫于 Linux 基金会的压力,最终放弃了。

引用来自“eechen”的评论

你智商需要充值.
Android只不过是分裂了Java这门语言的生态,开发Android应用的就知道:
import java.io.File; //这个还得依赖Oracle JDK/OpenJDK
import android.webkit.WebView; //这个才是Android上的虚拟机提供的功能
了解了没,Android开发依旧依赖标准Java虚拟机,但其基于Java语言搞得新的API分裂了Java开发生态(导致代码不通用).

还有,软粉得了,不要微软一加入Linux基金会,就三句话不离,搞得好像Linux基金会因为微软而荣耀似的.

引用来自“struct”的评论

放你他妈逼的,狗屁,少你妈逼给劳资扣软粉的帽子,提 Linux 基金会也他妈逼的成软粉了?你他妈逼真能扯,不是老子想爆粗口,老子最烦的就是某些狗逼给人老子扣帽子。
你自己都发现自己编不下去了,就爆粗了.
拿两个GPL的成功案例来说GPL失败.
是你逻辑有问题还是你想颠倒黑白是非忽悠人呢?
我不是那么好忽悠的哟.
struct
struct

引用来自“首席李兰春黛”的评论

GPL的存在就是为了防止开源软件被某商业公司 据为己有,然后另起炉灶去害人。

引用来自“struct”的评论

GPL 并不能防止软件被商业公司据为己有,也不能防止另起炉灶。
Java 是基于 GPL 协议开源的,但这并不能阻止 Oracle 将 Java 据为己有。
Linux 是基于 GPL 协议开源的,但这并不能阻止各种公司、组织另起炉灶,各种 Linux 发行版大行其道。
一个合适的开源协议加一个统一的非营利性组织才是关键。
Linux 内核没有分裂很大程度上得益于 Linux 基金会,大家都加入 Linux 基金会,争取自己的发言权,从而避免另起炉灶。

引用来自“eechen”的评论

恰恰相反,你举的Java和Linux这两个都是GPL防止其他厂商另起炉灶的例子。
首先,Java是SUN开源的产品,Oracle收购SUN后Java属于Oracle维护的开源产品。
好了,除了Oracle的JDK/OpenJDK,还有其他厂商(IBM?)另起炉灶的发布的JDK比原始JDK更通用的么?

然后再说Linux,不管哪个发行版,采用的都是标准统一的Linux内核,甚至包括Android,这就是为什么Nginx/PHP/MySQL这些Linux软件可以很轻松的交叉编译到Android平台上。比如我编译的ARM架构Linux版PHP7 ( #PHPDroid# ),同一个二进制文件,既能在Raspbian上跑,也能在Android上跑。

简而言之,就是你能找到一个新的JDK分支或者Linux内核分支么?
有人这么干过,那就是Google。
Google曾经试图把Android使用的Linux内核从Linux官方主干中分离出来,结果迫于压力,回归了。
再者,Google在Android上开发不兼容标准JVM的虚拟机破坏Java生态,它也做到了。
哈哈。

引用来自“struct”的评论

你看,你和我表达的是一个意思吧。
Java 是基于 GPL 协议开源的,但还是被谷歌分裂了。
谷歌试图在 Android 上分裂 Linux 内核,结果迫于 Linux 基金会的压力,最终放弃了。

引用来自“eechen”的评论

你智商需要充值.
Android只不过是分裂了Java这门语言的生态,开发Android应用的就知道:
import java.io.File; //这个还得依赖Oracle JDK/OpenJDK
import android.webkit.WebView; //这个才是Android上的虚拟机提供的功能
了解了没,Android开发依旧依赖标准Java虚拟机,但其基于Java语言搞得新的API分裂了Java开发生态(导致代码不通用).

还有,软粉得了,不要微软一加入Linux基金会,就三句话不离,搞得好像Linux基金会因为微软而荣耀似的.
放你他妈逼的,狗屁,少你妈逼给劳资扣软粉的帽子,提 Linux 基金会也他妈逼的成软粉了?你他妈逼真能扯,不是老子想爆粗口,老子最烦的就是某些狗逼给人老子扣帽子。
eechen
eechen

引用来自“首席李兰春黛”的评论

GPL的存在就是为了防止开源软件被某商业公司 据为己有,然后另起炉灶去害人。

引用来自“struct”的评论

GPL 并不能防止软件被商业公司据为己有,也不能防止另起炉灶。
Java 是基于 GPL 协议开源的,但这并不能阻止 Oracle 将 Java 据为己有。
Linux 是基于 GPL 协议开源的,但这并不能阻止各种公司、组织另起炉灶,各种 Linux 发行版大行其道。
一个合适的开源协议加一个统一的非营利性组织才是关键。
Linux 内核没有分裂很大程度上得益于 Linux 基金会,大家都加入 Linux 基金会,争取自己的发言权,从而避免另起炉灶。

引用来自“eechen”的评论

恰恰相反,你举的Java和Linux这两个都是GPL防止其他厂商另起炉灶的例子。
首先,Java是SUN开源的产品,Oracle收购SUN后Java属于Oracle维护的开源产品。
好了,除了Oracle的JDK/OpenJDK,还有其他厂商(IBM?)另起炉灶的发布的JDK比原始JDK更通用的么?

然后再说Linux,不管哪个发行版,采用的都是标准统一的Linux内核,甚至包括Android,这就是为什么Nginx/PHP/MySQL这些Linux软件可以很轻松的交叉编译到Android平台上。比如我编译的ARM架构Linux版PHP7 ( #PHPDroid# ),同一个二进制文件,既能在Raspbian上跑,也能在Android上跑。

简而言之,就是你能找到一个新的JDK分支或者Linux内核分支么?
有人这么干过,那就是Google。
Google曾经试图把Android使用的Linux内核从Linux官方主干中分离出来,结果迫于压力,回归了。
再者,Google在Android上开发不兼容标准JVM的虚拟机破坏Java生态,它也做到了。
哈哈。

引用来自“struct”的评论

你看,你和我表达的是一个意思吧。
Java 是基于 GPL 协议开源的,但还是被谷歌分裂了。
谷歌试图在 Android 上分裂 Linux 内核,结果迫于 Linux 基金会的压力,最终放弃了。
你智商需要充值.
Android只不过是分裂了Java这门语言的生态,开发Android应用的就知道:
import java.io.File; //这个还得依赖Oracle JDK/OpenJDK
import android.webkit.WebView; //这个才是Android上的虚拟机提供的功能
了解了没,Android开发依旧依赖标准Java虚拟机,但其基于Java语言搞得新的API分裂了Java开发生态(导致代码不通用).

还有,软粉得了,不要微软一加入Linux基金会,就三句话不离,搞得好像Linux基金会因为微软而荣耀似的.
struct
struct

引用来自“首席李兰春黛”的评论

GPL的存在就是为了防止开源软件被某商业公司 据为己有,然后另起炉灶去害人。

引用来自“struct”的评论

GPL 并不能防止软件被商业公司据为己有,也不能防止另起炉灶。
Java 是基于 GPL 协议开源的,但这并不能阻止 Oracle 将 Java 据为己有。
Linux 是基于 GPL 协议开源的,但这并不能阻止各种公司、组织另起炉灶,各种 Linux 发行版大行其道。
一个合适的开源协议加一个统一的非营利性组织才是关键。
Linux 内核没有分裂很大程度上得益于 Linux 基金会,大家都加入 Linux 基金会,争取自己的发言权,从而避免另起炉灶。

引用来自“eechen”的评论

恰恰相反,你举的Java和Linux这两个都是GPL防止其他厂商另起炉灶的例子。
首先,Java是SUN开源的产品,Oracle收购SUN后Java属于Oracle维护的开源产品。
好了,除了Oracle的JDK/OpenJDK,还有其他厂商(IBM?)另起炉灶的发布的JDK比原始JDK更通用的么?

然后再说Linux,不管哪个发行版,采用的都是标准统一的Linux内核,甚至包括Android,这就是为什么Nginx/PHP/MySQL这些Linux软件可以很轻松的交叉编译到Android平台上。比如我编译的ARM架构Linux版PHP7 ( #PHPDroid# ),同一个二进制文件,既能在Raspbian上跑,也能在Android上跑。

简而言之,就是你能找到一个新的JDK分支或者Linux内核分支么?
有人这么干过,那就是Google。
Google曾经试图把Android使用的Linux内核从Linux官方主干中分离出来,结果迫于压力,回归了。
再者,Google在Android上开发不兼容标准JVM的虚拟机破坏Java生态,它也做到了。
哈哈。
你看,你和我表达的是一个意思吧。
Java 是基于 GPL 协议开源的,但还是被谷歌分裂了。
谷歌试图在 Android 上分裂 Linux 内核,结果迫于 Linux 基金会的压力,最终放弃了。
eechen
eechen

引用来自“首席李兰春黛”的评论

GPL的存在就是为了防止开源软件被某商业公司 据为己有,然后另起炉灶去害人。

引用来自“struct”的评论

GPL 并不能防止软件被商业公司据为己有,也不能防止另起炉灶。
Java 是基于 GPL 协议开源的,但这并不能阻止 Oracle 将 Java 据为己有。
Linux 是基于 GPL 协议开源的,但这并不能阻止各种公司、组织另起炉灶,各种 Linux 发行版大行其道。
一个合适的开源协议加一个统一的非营利性组织才是关键。
Linux 内核没有分裂很大程度上得益于 Linux 基金会,大家都加入 Linux 基金会,争取自己的发言权,从而避免另起炉灶。
恰恰相反,你举的Java和Linux这两个都是GPL防止其他厂商另起炉灶的例子。
首先,Java是SUN开源的产品,Oracle收购SUN后Java属于Oracle维护的开源产品。
好了,除了Oracle的JDK/OpenJDK,还有其他厂商(IBM?)另起炉灶的发布的JDK比原始JDK更通用的么?

然后再说Linux,不管哪个发行版,采用的都是标准统一的Linux内核,甚至包括Android,这就是为什么Nginx/PHP/MySQL这些Linux软件可以很轻松的交叉编译到Android平台上。比如我编译的ARM架构Linux版PHP7 ( #PHPDroid# ),同一个二进制文件,既能在Raspbian上跑,也能在Android上跑。

简而言之,就是你能找到一个新的JDK分支或者Linux内核分支么?
有人这么干过,那就是Google。
Google曾经试图把Android使用的Linux内核从Linux官方主干中分离出来,结果迫于压力,回归了。
再者,Google在Android上开发不兼容标准JVM的虚拟机破坏Java生态,它也做到了。
哈哈。
struct
struct

引用来自“首席李兰春黛”的评论

GPL的存在就是为了防止开源软件被某商业公司 据为己有,然后另起炉灶去害人。
GPL 并不能防止软件被商业公司据为己有,也不能防止另起炉灶。
Java 是基于 GPL 协议开源的,但这并不能阻止 Oracle 将 Java 据为己有。
Linux 是基于 GPL 协议开源的,但这并不能阻止各种公司、组织另起炉灶,各种 Linux 发行版大行其道。
一个合适的开源协议加一个统一的非营利性组织才是关键。
Linux 内核没有分裂很大程度上得益于 Linux 基金会,大家都加入 Linux 基金会,争取自己的发言权,从而避免另起炉灶。
返回顶部
顶部