Java与Linux 一对开源运动的婚姻

在2004年开源运动的积极倡导者Eric Raymond就给Sun 当时的CEO Scott McNealy写了一封信要求Sun对Java进行开源,允许开发人员自由修改。与此同时开源运动的另外一位积极倡导者、GNU计划的创始人 Richard Stallman大声疾呼开发人员不要安装封闭源代码的Java,痛批Sun的不开源行为。

两年后Sun终于发布了开源的OPENJDK,同时发布了基于开源协定GNU GPLv2的用于桌面西系统的Java 标准版(Java SE),以及用于移动设备的Java 移动版(Java ME),Sun希望GPLv2能够为Java带来更多的用户,并且宣称Java会继续保持“一次编写、到处运行”。

另外Sun还就如何简单容易地发布OpenJDK到Linux广泛征求意见,意图能够把Java推向新的平台、新的市场。Richard Stallman改变了他的态度,对于Sun的这一举措给与了积极评价。

两年后,Sun的这一举措达到他的 初衷了吗?要求Java开源的呼声停止了吗?Sun的CEO Simon Phipps称至少达到了设定的目标,Sun做的不错。那这项举措对于日常使用Java开发的程序员来说,生产效率得到改善了吗?Phipps说如果你是一个基于Windows平台的开发人员可能感觉不到这一变化,但是如果你是一个工具提供商的话,你得产品的应用范围会扩大很多,你的产品也会在Linux 上顺利运行,换句话说你的市场也会在瞬间增大……

Java也在与时俱进

Java的市场显然扩大了很多,OpenJDK现在已经被包含在四个最著名的开源Linux产品中,Fedora 10、Ubuntu 8.10后的所有版本、OpenSUSE 11以及Debian的最新版本。另外Red Hat Enterprise Linux 5.0和CentOS 5也包含了OpenJDK.Sun同时宣称其Glassfish计划也获得了成功,截止目前为止已经有8百万份的下载,另外在过去的一年中有25万份的产品进行了注册。

但是还有一个难题在等待着Sun,Java并没有一个特定的版本或者API库百分百与Linux兼容。这就使得在Linux上安装以及维护Java变成一件头痛的工作,他要求Java开发人员为不同的Linux版本编写差异化的代码。

怎么办?锁定一个Java的发布包,如果用户需要使用新的API的时候才去下载更新的版本。但是注意到在不同的Linux平台上安装以及使用Java都是不同的,并且Java的实现也是不同的,同时Java的更新也非常多。那么下一个问题就是用户需要安装什么版本的Java,最新版还是最被广泛使用的版本。

直到现在Sun还对Linux发布商进行一对一的支持,这样就缺乏一种广泛的推动力,还需要标准化一些东西。

不过改变说来就来,最近Linux基金会宣布了Linux基础标准(LSB)4.0,在这个标准中要求Linux发布商必须支持Java SE 6.0.根据Linux基金会的信息LSB 4.0会被Asianux 3.0、Mandriva Corporate 5.0、RHEL 5.0、SLES Enterprise 10以及Ubuntu LTS 8.04中直接支持。尽管如此还是有一些Linux版本没有支持LSB 4.0,这依然要求开发人员考虑兼容性的问题。

但是并不是所有Linux开发人员都会采用Java作为其开发语言的,他们会坚持他们自由与开放软件的理念。

下来我们谈一下TCK,一个用来监测Java应用程序是否与Java虚拟机相兼容的工具。现在看起来Sun不会对TCK开源,Sun也因此备受指责。Sun并没有开放其所有的东西,Sun仍然牢牢控制着Java的知识产权。

Java 开源带来的影响

值得一提的一件事情是OpenJDK带动Java 6 SE进入了Mac OS X平台。另外开发人员还可以将Java Runtime Environment放在你的产品中发布,尽管必须取得Sun的授权认证。

但是就现状来讲,如果没有OpenTCK的话,Linux开发人员可能不会一直使用Java来进行应用开发,OpenJDK只会作为茶余饭后的闲谈。

看来Sun在推动Java开源的路上还有很多的路要走,但是无论怎么说Java开源都是正确的举措,我很期待着两年后OpenJDK能有更多的进展。

原文发布于微信公众号 - java一日一条(mjx_java)

原文发表时间:2015-09-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏钱曙光的专栏

一周极客热文:2014最受欢迎的10种编程语言

从10个重要的信息源(包括IEEE Xplore,谷歌和GitHub)中选取了12个重点指标,评选出了2014最流行的编程语言。(具体排名请看上图) 下面是小编...

1945
来自专栏HBStream流媒体与音视频技术

DirectShow捕获+mencoder+ffmpeg+sox 打造小巧的音视频制作、加工软件

3597
来自专栏华章科技

如何入门 Python 爬虫?

之前转载过两篇关于“爬虫”的文章,小编在后台收到不少相关的留言,希望能够继续深入,所以有了下面这篇文章。

1282
来自专栏枕边书

我的书单(Book List)

下面列了我读过的一些编程相关的书籍,写了一些对书的印象,都是个人观点。书名后是我个人对书的推荐强烈度打的分(5分满分),都是拍脑袋打的。 我比较习惯读纸质书,买...

3706
来自专栏北京马哥教育

原创投稿 | 乐乐快跑的运维学习基础大纲

乐乐快跑,马哥门徒,马哥教育原创作者联盟成员,专注于运维领域知识分享,强于知识体系构建。 各位朋友大家好,乐乐快跑今天给大家分享下运维的学习规...

4659
来自专栏大宽宽的碎碎念

系统的请求量突然增大数倍怎么办?面试中怎么回答真实世界的流量问题最后的话

57116
来自专栏DevOps时代的专栏

一种轻量级的代码资产管理思路

“代码管理还分轻量和重量?”,想必不少被标题吸引进来的朋友会有此疑问。在此,请容我解释一二: 1、注意,这里提到的是“代码资产”,而不是“代码”。 2、为了给后...

2378
来自专栏刘君君

Rest Notes-设计Web架构:问题与领悟

1253
来自专栏CSDN技术头条

【BDTC 2015】数据库分论坛:GBase 8t、PosgreSQL-X2核心技术解析

2015年12月10-12日,由中国计算机学会(CCF)主办,CCF大数据专家委员会承办,中国科学院计算技术研究所、北京中科天玑科技有限公司与CSDN共同协办,...

2426
来自专栏SDNLAB

聚焦Open vSwitch性能大提速

Open vSwitch(OVS)项目的开发人员对其性能稍加改进,正如他们所说已经将其提升到了惊人的速度。 这项工作已经持续了一段时间,但具体细节直到今天才在N...

3536

扫码关注云+社区

领取腾讯云代金券