|
Sun公司的董事长兼CEO Jonathan Schwartz 先生在本周一表示,SUN 公司能够在GNU通用公共协议(GPL)的构架下向开放源代码世界贡献 Java 平台,这是一个具有“历史性意义”的改变。但是 IBM 公司希望Apache软件基金会(Apache Software Foundation)能够负责 Java 的未来发展。
|

开源Java:历史性的改变 |
在程序开发员社区以及其他软件厂商们的多年强烈呼吁之下,在本周公司总部所召开的一次新闻发布会上,SUN 公司终于正式将 Java 贡献给了开放源代码世界。这次开放的 Java 版本包括了其标准版(Standard)、微型版(Micro)以及企业版(Enterprise)。
但是,在开放源代码社团以开放源代码方式来扩展这套平台的同时,SUN 公司依然会保留一套经过商业授权的,并且受到保护的 Java 版本。开放源代码社区所贡献的智慧和代码甚至会被考虑到包括进 SUN 公司的商业版 Java 软件当中。
 |
| Sun公司的董事长兼CEO Jonathan Schwartz |
Schwartz 表示,这是开放源代码的举动是“我认为在通往未来的道路上最具有历史意义的改变之一,这种意义不是仅仅针对SUN公司而言的,而是针对于整个软件世界的。就我个人看来,这是一次真正意义上的根本性改变”。
Schwartz 表示,通过这次开放源代码的举动,SUN 公司发现了一种巨大的网络效应。“这是一个有越多人参与,就会越有价值的网络。”他评论到,“这同时也是一个有越多人参与,SUN 公司的商业利益就会越获利越丰的网络。”
为了吸引尽可能多的Linux开发者,促进软件的兼容性,SUN 公司放弃了原先在自己的CDDL协议(Common Development and Distribution License,通用开放发布协议)下开放Java软件的计划,替而代之地采用了“Linux亲和度更高”的 GPL 2 协议。
按照 GPL 协议的规定,任何由 GPL 协议代码所演生出来的代码,连同和它相结合的代码,必须在同样的自由的 GPL 协议下被发布出来。考虑到相关独立软件生产厂商的利益,SUN 公司允许在自己的 Java 开源版本中应用 GPL 协议中的“类途径例外(ClassPath exception)”条款。该项条款能够允许商业代码通过GPL 类途径库的方式,和开源的 Java 结合在一起,而同时又不需要开放或重新发布自己的私有软件代码。
Schwartz 表示,在当今世界上,Java 广泛地运行在 Solaris、GNU Linux、苹果的Mac电脑、Symbian、Tivo 以及其它多种平台之上。“我们正在谈论的是数以亿万计的用户。”
而在另一方面,虽然同样也很赞赏SUN公司的这次开源举动,IBM 公司却随即发表了一份声明,反对 SUN 公司的具体开源策略。按照IBM软件集团的互联网前沿技术部门副主席 Rod Smith 的话说,IBM 公司建议 Java 的开源应该走 Apache 的道路。
Smith 表示:“IBM公司支持所有开发源代码协会(OSI)所核准的开源协议。虽然话是这样说,现在在 Apache 基金会内部其实已经有了一个非常重要的现存的开源项目,其致力于和SUN 公司一起合作,创造一个Java SE(Standard Edition,标准版本)的Java 兼容实现——也就是著名的‘融合项目(Harmony project)’。此外,最近刚刚有在Java ME(Micro Edition,微型版本)领域非常活跃的公司宣布,他们将会向 Apache 基金会捐献关键性的Java技术,以促进 Java ME 项目的快速发展。”
“因为这些 Apache 项目取得了如此巨大的成绩,我们必须要向 SUN 表达出自己强烈的愿望,希望他们能够将自己的Java技术捐献给Apache基金会,而不是重新开启另一个开源的 Java 项目,或者至少要让他们所贡献的 Java 代码遵从一个“与 Apache 友好的”开源协议以确保开发源代码 Java 社区不会产生分裂或丧失应有的权力。从而SUN公司也可以将同样的开源版本Java的好处带给这个显赫的正在急剧成长的开发源代码社区。”
IBM 的建议立刻就引来了 Schwartz 尖锐的回应。
|