11月10日上午,Sun公司软件事业部联合首席技术官Robert Brewin先生通过越洋电话向记者透露,Sun公司决定于11月13日正式宣布在GPL协议第二版本(GPL 2)之下对Java开放源代码。此前的10月25日,在Oracle主办的OpenWorld大会上,Sun总裁兼首席执行官Jonathan Schwartz曾经表示,Sun将在30到60天内开放其核心Java平台源代码。仅仅过去不到20天,Sun兑现了其诺言, 并且比原先走得更快,也更彻底。
根据13日的宣布, Sun首批正式发布的有Java平台标准版(Java SE)的第一批源代码,以及Java平台迷你版(Java ME)的可执行源代码。此外,Sun还将对Java平台企业版(Java EE)增加GPL 2许可。此前,Java EE已通过Project GlassFish项目在CDDL(通用开发与发布许可)下对外提供有一年多的时间。Sun公司表示,除了一部分所有权不属于Sun的源代码之外,几乎全 部Java技术的源代码将按照GNU GPL自由软件许可授权协议公开,所有有关Java的源代码将在2007年3月前全部开放。
“这是一个顺从民意的决定,一个非常重大的历史性进步。”中国软件行业协会共创软件分会(共创软件联 盟)的秘书长袁萌先生对记者表示:“此前的一项调查表明:76%的被调查者希望Java开源能够遵守GPL规则。”Sun的这一举措是GPL许可下的最大 源代码贡献之一(GNU/Linux操作系统也是在GPL许可下发布的),也是业内最重大的、应用最广泛的软件平台的开源举措之一。通过Java开源,全 世界所有的开发人员都将可以对Java源代码进行修改,改善,除错,同时Java也将变为一种真正免费的技术(维护收费)。
“Sun对Java技术的开源举措,将使我们通过NetBeans集成开发环境(IDE)的采用,进入 一个开发者协作和创新的新阶段,预期Java平台将成为新一代Internet、桌面系统、移动器件以及企业应用的基础架构。”Sun公司主管软件事务的 执行副总裁Rich Green先生认为:“通过在GPL许可下将Java开发工具包(JDK)作为免费软件发布,Sun将密切与GNU/Linux操作系统的分销商们的合 作。这些GNU/Linux操作系统的分销商们很快将把JDK作为其开源库的内容之一,而其开源库一般包括在GNU/Linux的分销版本之中。”
开放一直是Sun长期倡导的理念,从历史上看, Sun会根据每一个软件或者社区的特点来决定采用哪一种许可证,比如Open SPARC开源采用的是GPL协议,OpenSolaris开源采用的是CCDL协议。Sun公司软件开源首席长官Simon Phipps曾经对记者表示,开源是Sun的核心策略,Sun在Java方面不但要开源,而且要把Java社区运作好,并且确保Java的兼容性。过去, Sun一起拒绝开放Java的源代码,原因之一是开源可能会使市场上出现多个不兼容的Java版本。如今,采用GPL 2以及现有Java市场的规模使得出现多种不兼容的Java版本的可能性大大降低了。GPL 2具有强制性,根据GPL的要求,对采用GPL许可方式的软件的修改也必须采用GPL许可方式,因此,如果软件开发人员在开发软件时采用了开放源代码 Java软件,其软件也必须以GPL许可方式发布。此外,Sun也一直强调,所有开发的应用必须通过TCK测试,以保证兼容性。
毋庸置疑,Java开源对中国更具有积极的现实意义。中国工程院院士倪光南表示:“Sun公司开放 Java源代码是开源软件发展的重要里程碑。近年来,跨平台的Java语言已成为业界的一个极为重要的开放标准。Java的开源,充分证明了开源模式的强 大生命力,为Java的进一步发展注入了新的活力。我们赞赏Sun公司开放Java源代码,这有利于打破技术垄断,有利于全球信息产业的发展。中国应当抓 住当前开源软件蓬勃发展的机遇,在一个开放环境下大力推进自主创新,争取实现中国信息产业的跨越式发展。”此外,中国开源软件推进联盟主席陆首群先生也表 示:“在全球拥有500万开发者的Java语言开放源代码,是开源运动的一件盛事。这一举措不仅可以极大地促进Java语言的进一步普及和发展,为采用开 放源代码技术构建 更加开放的信息技术生态系统奠定坚实基础,也为中国的信息技术产业发展带来了一个新的机遇。作为开放源代码运动的重要贡献者,Sun公司此举是继2005 年开放 Solaris操作系统之后,对业界的又一重大贡献。”