51CTO推荐:Java EE 6新特性尝鲜:EJB 3.1重要变化总览
据国外媒体报道,虽然JavaEE 6在Java社区进程(JCP)中发布了公共预览版,但这一过程并非一帆风顺。
在上月刚刚结束的公共预览版投票中显示Apache软件基金会对JavaEE 6投了反对票。这一反对票揭开了昔日Apache软件基金会与Sun关于Java Compatibility Kit(JCK)许可条款之争的旧伤。
尤其是Apache认为Sun违背了JCP中Java规范分享协议(JSPA)中的条款,因为这些条款包括JCK的许可,而这会降低Java的被接受度。
在该协议下,JCK目前只能针对OpenJDK,有GPL认证的Java虚拟机可以无偿使用JCK。而商业开发用户仍然需要付费才能获得JCK许可。
其与Apache的分歧所在是JCK在Apache Harmony中不使用GPL,Apache Harmony是一项创建Apache认证的Java实现的工程。
Sun已经抛出了橄榄枝,它向Apache开发人员提供JCK许可。不过该许可仍然包含了一些限制,比如不允许用JCK对Java实现进行测试。
基金会对于拒绝JavaEE 6的声明是:“这既不是关于技术优点,也不是专家组关于工作质量的声明……如果不是Sun制造的至今没有解决的不合作问题,Apache就不会投反对票了。”
并不只有基金会表达了保留意见,虽然Intel投了赞成票,但它也对基金会关于去掉使用范围的要求表示支持。需要注意的是因为JavaEE需要预先安装JavaSE,残留在JavaSE上的限制条件仍然会对JavaEE起作用。同样是投了赞成票的RedHat公司,要求一份明确的禁止对使用范围进行限制声明。
JavaEE 6.0之所以在市场上具有战略意义,是因为几个重量级的服务器产品的计划都是基于JavaEE 的,包括IBM和Oracle。像Eclipse这样的开发组织也严重依赖JavaEE。
【编辑推荐】