InfoQ

News

Open JDK7の基盤を起用しないOpen JDK6

作者 Ryan Slobojan, 翻訳者 編集部 投稿日 2007年9月6日 午前1時36分

コミュニティ
Java
トピック
オープンソース
タグ
Java SE,
オープンソースJava
Sunは最近OpenJDKのJava6 バージョンをリリースすることを発表した。それはJava 6のコンプライアントインプリメンテーションを作るためのOpen JDK7のコードベースのバックポートを伴う。InfoQはこの決断に関してもっと深く掘り下げるためにSun社のJoseph Darcy氏に話を聞いた。

なぜこの時期にSunはオープンソースJDK 6を決断したのか尋ねたところ、これによってMercurialソースコードリポジトリバイナリープラグアーキテクチャ両方をサポートするOpenJDK 7の変更部分の利点を活用することができるのだとDarcyは述べた。またそれによってSunはOpen JDK7で行われたコードの監査と障害の排除作業の再利用ができるのだ。またそこでは多大な努力がなされ、また2個目のコードベースのプロセスを全て終わらせたくないという願望があったのだ。Darcyへソースコードを発行するOpenJDKと現在のJDK6プロジェクトの違いを尋ねた。そこで彼は現在のJDK6コードはJava リサーチライセンスの下で発行されており、一方Open JDKはGNU General Public License(GPL)のバージョン2の下でライセンスされるという事を述べた。

InfoQは次にOpenJDK6がOpenJDK7の開発に与える影響について尋ねた。彼は下記のように答えた。

JDK7のオープンソース化における努力はJDK7のリリースの可能性を失わせるが、確実に今後のよりよいリリースに向けて前進しているのは確かだ。しかしながら現在のオープンソースJDK7があることを前提として、それを基盤にオープンソースJava SE6を作り出すことは比較的簡単なので、JDK7にはそれほど多大な影響は及ぼさないだろう。そしてJava SE6オープンソース化の誓約を満たすことでJDK7の開発に注目が集まるのが予測される。
また私たちはDarcy氏にOpen JDK7からOpen JDK6をベースとしたどんなリスクが存在するか尋ねたところ、彼はJava7では終了しているAPIの大規模な再構築を見つけ、以前の状態に戻す必要があるかも知れないと述べた。しかしながら彼の予測はほとんどの開発作業が新しいクラスをメソッドを除去したり、最近比較的リスクの低い変更された仕様を元に戻すということでもあるる。またDarcyはこの先数回のリリースに関して、Java 6のアップデートは現在のJDK6コードベースを保ったものになり、現在ではSun社が将来的にOpenJDK6のコードベースに変更を加えるかは未知である。

DarcyはまたJDK6のオープン化に考え得るオプションを説明した。

一つの方法は6のアップデートワークスペースの障害物を全て除去して、全てのコードの監査をやり直すことだ。これをやりたい人は誰もいなかったのだが!もう一つの方法としては、下記に示された技術に基づいたSE 6のインターフェースにさらすためだけにJDK7体格の周りに技術的なラッパーを開発することである。

Java SEにおけるJava ME プラットフォームの模倣 Kenneth Russell、 Tony Wyant著

基本的にユーザークラスはJVMに取り込まれている間に再記述されるので、Java SE6の世界観しか見えないのである。この技術は反射的なアクセスにも対応することができる。これは技術的に興味深い一方、開発にはたくさんの強化が必要であったでだろうし、たくさんの合併症状があっただろう(non-Java インターフェース等)。だからこの技術は私たちが選択した直接的な逆説的な側面からのアプローチよりも、市場に出すのに時間がかかったのであろう。

最終的にInfoQはOpen JDK 6の未来に関して尋ねた。

近いうちに私の目標はOpenJDK 6用の公式Mercurialリポジトリをつくることになるだろう。そのコードベースがどのように進化するかはその重要点を踏まえて未知なことである。なぜなら外部のコミュニティが結果を判断する手助けをするからというのもその理由の一つである。JDKは大規模な銀行から個人的な開発者までと幅広い状況にて使用されている。どのようにバグをフィックスしたり機能を合体させるかというリリースモデルは、ユーザーの範囲全般で妥協したものである必要がある。Open JDK6の開発でJava SE6のリリースモデルの再評価ができるようになる。現在のアップデートリリースはオープンコードに基づいたものになるように変換されるかもしれない。一方、もしかしたら一目瞭然のアップデートとオープンコードベースはいろいろな領域のニーズを満たすべきなのかもしれない。Open JDK 6がリリースされ使用され始めたら将来のリリースモデルの方向性に関する情報が得られるだろう。

DarcyはまたOpenJDK 6がJava One2008までに一大目標を達成しているかもしれないということをほのめかした。

ブックマーク
digg+,
reddit+,
del.icio.us+,
dzone+,
Hatena

No comments

返信

特集コンテンツ一覧

トップスポーツチームの監督に教わる秘訣

この論文では、氏が発見した原則を要約し、その原則をいかにしてソフトウェア開発に応用するかを説明します。

事例研究:Dutch Railwaysのプロジェクトにおける分散拠点でのスクラム・プロジェクト

この記事では、私達がどのようにして大規模(240人月、10万行強)でインドとオランダの開発者も参加したスクラム・プロジェクトを成功させたのかを示しています。

Agile2008チーム参加レポート - 帰国そして変化

Agileカンファレンスに「参加者としてだけでなく、発表者として参加しよう」を掲げたチームgoyattomは、サブミッションを提出し、7つのセッションが日本から選択されました。参加者はカンファレンスで各々の発表や、各セッションへの参加、諸外国のエンジニアとの出会い、ステージ上で DearXPを熱演などの様々な思い出を抱えて、無事日本に戻ってきました。

SilverlightとJavaのインターオペラビリティ

マイクロソフトのRobert Bellが、SilverlightとJavaを使用したインターオペラビリティのシナリオを紹介し、サンプルコードを例にとってアーキテクチャの手引きを提供します。

Agile2008 チーム参加レポート - カンファレンス参加編

Agileカンファレンスに「参加者としてだけでなく、発表者として参加しよう」を掲げたチームgoyattomは、サブミッションを提出し、7つのセッションが日本から選択されました。サブミッションが選択された人、そうでない人も含めて、個々の目的意識の確認、膨大なプログラムから聞きたいセッションの選択、旅行の準備、プレゼンテーションの準備の期間を終えて、無事当日を迎えました。

Agile2008 チーム参加レポート - 動機/準備編

筆者はアジャイルソフトウェア開発についての年に一度の国際会議であるAgile2008に初めて参加してきました。今年の日本からの参加者の数は14名にも及び、発表者は5名、受け持ったセッションは8つに及び、例年にない活躍を見せました。なぜ今年のAgile2008では、これほど多くの日本人が参加し発表に至ったのか? そのレポートをお届けします。

Javaトラブルシューティングメルマガ総集編 2008/08~09

エスエムジーでは、Java全般を対象にしたトラブルシューティングサービス「JaTS」を提供しています。この記事では、前回に引き続き、JaTSにて蓄積したトラブル事例とその解決ノウハウの一部をお送りしている「Javaトラブルシューティングメールマガジン」(JTSMM)の総集編として、過去2ヶ月のトラブル事例と追加情報をダイジェストとして提供いたします。

モデル駆動アプローチがうまく機能しない(しなくなる)8 つの理由

この記事では、モデル駆動アプローチがうまく機能しない、または機能しなくなることによって期待した結果が実現できなくなる 8 つの理由について書きたいと思います。