设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客

漫谈Java开源5年:自由但带着枷锁

2011-12-2 14:48| 发布者: joejoe0332| 查看: 2672| 评论: 0|原作者: csdn|来自: csdn

摘要:   Java为何采用GPL  被称为“Java 之父”的James Gosling曾表示采用GPL许可证开源Java,是为了让开发者获得更多免费的代码。  “简单的说,它运行的很好。”Gosling说,“Java的发展远比我两年前预想的要快的 ...
  Java为何采用GPL

  被称为“Java 之父”的James Gosling曾表示采用GPL许可证开源Java,是为了让开发者获得更多免费的代码。

  “简单的说,它运行的很好。”Gosling说,“Java的发展远比我两年前预想的要快的多。”

  2006年11月13日,迫于外界的长期压力,在大家的一致许可下,Java终于开源了。Sun在基于GPL许可协议下推出了Java HotSpot虚拟机和编译器。在随后的第二年Sun又发布了Class library的源代码,同样采用了此协议。

  在开源社区,许可协议代表着一种契约,一种法律,一种政治。据Black Duck的统计表明,目前全球开源项目中有超过半数使用了GNU GPL许可协议。

  Gosling表示:“选择GPL和现有Java市场的规模使得出现多种不兼容的Java版本的可能性大大降低了。GPL具有强制性,通过让所有业界创新成为可共享,会促使各种版本保持兼容。”

  基于GPL协议发布OpenJDK

  两年后,Java在基于GPL许可证下发布了由Sun领导的第一个版本OpenJDK项目,该版本可以交付使用自由和开放源代码的一个Java开发套件。OpenJDK是一个主要致力于Java语言研究的开源项目,OpenJDK是Sun为著名的Java平台构建的Java开发环境的开源版本,完全自由,开放源码。而OpenJDK将会把这些资源和技术开放给开发者。

  Sun的这一宣布是GPL许可下的最大源代码贡献之一(GNU/Linux操作系统也是在GPL许可下发布的),也是业内最重大的、应用最广泛的软件平台的开源举措之一。

  毫无疑问,Java采用GPL打击了相当一部分厂商,但同时会获得FOSS(免费与自由软件社区)相当的好感。最显著的一点改变就是,现在在任何Linux发布版中都可以包含Java代码了,而在此之前,只有采用GPL的perl/python才可以。

  Oracle收购Sun 大力发展OpenJDK

  在2006年的JavaOne大会上Sun曾提出要开放Java语言源代码,于2009年4月15日正式推出了OpenJDK。同年,2009年4月,Oracle斥资74亿美元收购Sun,同时也获得了Java技术。自Oracle收购Sun之后,OpenJDK归Oracle管理。Oracle公司创始人Larry Ellison称在Java发展蓝图中一直将OpenJDK视为核心发展项目。此后,OpenJDK获得了颇具影响力的IBM和苹果两大平台的支持。而有了这三大平台的支持,势必为OpenJDK的发展驻足马力。

  OpenJDK是开源的,当然也有盈利,有一点毋庸置疑的是,有那么多Java开发人员和社区做支持,Java至少会比掌控在Sun一家手里发展的更快。

  在2007年之前,Sun顶着巨大压力被迫开源Java。以IBM公司尤为突出,作为Sun的竞争对手,IBM公司的软件系统在Java中间件中占据着巨大的市场份额。IBM曾发表了一份声明:“建议Java走一条Apache之路,应当将Java的控制权交给Apache软件基金会”。

  此前,Java大部分是基于SCSL(Sun Community Source License )开源。SCSL是一个开源协议,试图与官方标准相兼容同时也能确保Sun通过其他方式获得盈利下。但使用该协议,大部份厂商并不满意,Sun被迫做出改变。

  2005年Sun旗舰级软件产品Solaris是基于CDDL(Community Development and Distribution License)协议下开源的)。OpenSolaris是Sun发展史中的里程碑,也是Solaris社团和更广泛的开放源社团的技术基础。

  作为FOSS(Free and Open Source Software自由及开源软件)的主要贡献者,Sun对Java开源社区发出了信号,一些公司称,相比较JCP (Java Community Process)委员会,他们对Java开源没有任何计划。此时,Java开源一事受到业界的质疑,JCP的主管Onno Kluyt在2004年曾被问道:“你是如何看待Java开源的?能做到永远开源吗?”

  Sun董事会主席及联合创始人Scott McNealy在2004年提出了“开源模式”,Gosling称并不是所有人都反对Java开源。2002年Java提出开源,2003年Java快速发展使这一争论打破僵局。

  编后语

  开放Java的源代码是多年来Sun内部争论和外界呼吁的“产物”。过去,Sun一起拒绝开放Java的源代码,理由是这可能会使市场上出现多个不兼容的Java版本。起初这一呼声来自于开源社区的部分拥护者。作为OSI(Open Source Initiative)主席、《大教堂和市集》的作者Eric Raymond先生曾呼吁Sun公司将Java编程语言开源,不然这会损害Sun的长期利益,因为这种做法限制了开源社区对Java语言的广泛接受,以至于让其他脚本编程语言(如Python和Perl)对Java领域的不断蚕食。

  这么些年来,Java的成长与壮大离不开Gosling的功劳,随着Sun被甲骨文收购,很多人对Java的命运很是担忧。

酷毙
2

雷人
1

鲜花

鸡蛋

漂亮

刚表态过的朋友 (3 人)

  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部