最近のJava JSRの結果は、受けが良く、全て承認された。ただし、Apacheだけが全て反対票をいれた。 Google と Tim Peierls氏は、Java SE 7 と Java SE 8の JSRに反対票を入れた。議論中のTCKのライセンス問題と現場での制限を支持してのことである。
- プロジェクトCoin、JSR 334が13対1(棄権1)で 承認された
- プロジェクト Lambda、JSR 335が13対1(棄権1)で承認された
- Java SE 7, JSR 336が12対3で承認された
- Java SE 8, JSR 337が12対3で承認された
そのコメントを読むと、面白い。 Steven Colebourne氏がそれらを 1ページにまとめている。大多数はTCKに賛成票を投じているが、コメントは、全部がライセンス問題を批判している。
- Google: ライセンス条項のために反対票を投じた
- SAP AG: Java 7を今前進させる事は、重要と思うが、Apacheが言っているTCKに関する、Oracleの決定については、我々は反対を表明したい。
- Eclipse: Javaのライセンシングに関する問題が解決されないことに、がっかりしている
- RedHat: ライセンス条項とスペック リードがもっとオープンなライセンスを採用しないことに、非常に失望している
- Credit Suisse: ライセンス条項に関する現在の戦いで、Javaは、実際オープンな標準でないことが、よくわかった
また多くのコメントがJavaプラットフォームを現在の停滞した位置から前進させるために、彼らは、しぶしぶJSRに賛成したことを物語っている。更に、モジュール化が Java SE 7 と Java SE 8の両方の議論の中で、批判され、特に Java SE 8 JSRにおいて、OSGiとの互換性を強く望まれた。
また実際には投票できるほど進んでいないのに、包括的な Java SE JSRが投票の対象になったのは、始めてである。最近、プロジェクトCoinやLambdaの開発が非常に進展し、Java SE 7に JDBC 4.1のような予定外のものが含まれることは、歓迎されることであるが、Java SE 8 JSRには、いくつものまだ始まってもいないJSRが含まれている。おそらく、 Java SE 8 の仕様が決まることには、Oracleは、例えその内容がオリジナルのものと明らかに違っても、今回の投票結果を引き合いに出して、ほとんどが賛成した、と言い張るだろう。
しかし、ライセンス問題が未解決のために、JCPを “Just Customers, Please” だと、言う人もいる。すなわち、Oracleは、JCPを真面目には考えていないようだ、言うのである。この物語の最終ステージは、ApacheのJCPからの脱退である。これは、 以前の脅しを実行に移すものである。今回が Apache FoundationのJSRへの投票の最後かもしれない。
Apache Software Foundationは、このJSRに反対票を投じなければならない。JSRの技術的内容をサポートし、Javaプラットフォームを前進させる必要性には、真剣にサポートするが、我々は、道義上、このJSRに賛成できない。その理由は、以下の通りである。
- このJSRのTCKライセンスは、「現場における」制約を含んでおり、これが独立した実装の通常かつありふれた使用を制限している。ライセンス要素は、JSPAによって禁止されているばかりでなく、いくつかの場合には、Oracleを含んだ、JCP ECの大多数のメンバーによって全会一致で拒否されてきたものである。我々は、なぜOracleがそのような要素を含んだのか、憶測することはできるが、オープンな仕様化エコシステムは、いかなる組織の商業的利益とは、無関係でなければならないし、また守られなければならない、と我々は信じている。
- プロセス的に、このJSRは、自分自身のTCKライセンスと矛盾している。JSRは、Java SEは組込み向けのデプロイをターゲットにしている、と明言している。しかし、TCKライセンスは、特に、テストされた実装とは無関係な使用(例えば、ネットブック)を禁じている。我々は、このことが潜在的な実装者に対して、誤って法的な罠に導くものであることを知っており、TCKを合格した、あらゆる独立した実装は、実装者により適していると考えられたら、例えどんな条件のもとでも、使用することができ、配布することができなければならない、と信じている。
- スペック リードは、上記の両方に対する説明を複数のECメンバーから繰り返し求められてきたが、無視してきた。
- スペック リード、Oracleは、JSPAの義務に違反している。その理由は、Apacheに、自分たちの選択の条項の下で、その独立した実装を配布することを許す条項に従って、Apache HarmonyにTCKライセンスを提供し続けている、からである。JSPAの契約上の義務に、故意に反するものは、JCPに正当なメンバーとして、参加を認められるべきではない、と我々は信じる。このルールに、例外はない。
ECの決定に関わらず、前進しようとするOracleが表明した意図を理解するが、我々は、Oracleが上記の問題を解決し、JCPの枠内で、JCPのメンバーと一緒に働き続け、Javaを活気のある、進化し続けるプラットフォームにすることを強く要請したい。
Oracleは、その合意を尊重しそうにないので、Apache Foundation による声明が来週にも出そうである。