目次へ

1. イントロダクション

2006.12.12 株式会社四次元データ 鈴木 圭

本稿では Java SE の次期メジャー・バージョンである Java SE 6 "Mustang" について解説します。Mustang は J2SE 5.0 "Tiger" のときのような大幅な言語仕様の変更はありませんが、スクリプティング機能などの新機能の追加、XML サポートやセキュリティ関係、管理機能の強化、安定性の向上などが行われています。また、Java DB(Apache Derby)の標準装備などエンタープライズ・アプリケーション向けの機能が Standard Edition にも搭載されたことも注目されます。他にも、デスクトップ関係の機能強化としてスプラッシュ・スクリーンの表示やシステム・トレイのサポートが行われるなど、ネイティブ・プラットフォームとの統合も行われています。

1.1. Java SE 6 "Mustang"

冒頭で「Java SE 6」と述べましたが、今回のリリースから「Java 2 Platform Standard Edition」の「2」が削除され、「Java Platform Standard Edition」に正式名称が変更されました。バージョン番号も小数点以下が無くなり「Java SE 6」という具合になりました。ただし、開発者バージョンには今までどおり「1.6.0」が与えられています。また、開発コード・ネームには "Mustang(半野生馬)" という名称が与えられ、活発に開発が行われています。

バージョンアップというと新機能が追加されたり、バグ・フィックスが行われるなど歓迎すべき事柄が多いものですが、過去のバージョンとの互換性も気になるところです。今回のバージョンアップに限らず Java では互換性を非常に重要視しており、セキュリティ問題などに関するものを除き「以前のバージョンで動作するプログラムは Mustang でも動作する」ことが大きな目標とされています。

Mustang は現在、ベータ版として開発が続けられていますが、正式リリースは 2006 年秋が予定されています。また、Java の統合開発環境として有名な Eclipse のバージョン 3.2 では Mustang に対応しており、ソース・コードやターゲット VM のバージョンに 6.0 を指定できるようになっています。2006 年秋に正式リリース予定ということもあり、機能のほとんどについては完成している状態なので、一足先に試してみる価値は十分にあるでしょう。

1.2. Mustang で掲げられたテーマ

約二年ぶりのメジャー・バージョンアップとなりますが、その詳細については JSR 270 を軸に、関連する JSR にて仕様が制定されています。

Mustang に関する仕様は JSR 270 で概要が述べられており、関連する JSR で詳細が定義されています。JSR では重要課題として以下に示すテーマが掲げられています:

  • 互換性
  • Easy of Development
  • 診断、モニタリング&管理
  • Enterprise Desktop
  • XML & Web サービス
  • 透明性

互換性

過去のバージョンとの互換性や品質、安定性は重要課題とされています。非推奨 API の削除やセキュリティなどの重大な問題に関係する場合を除き、過去のバージョンで動作するアプリケーションは Mustang でも動作するように努力されています。

Ease of Development

EoD(Ease of Development)に関しては、Tiger のときにアノテーションや Generics の導入など言語仕様の変更を伴う変更が行われてきました。Mustang ではスクリプティング機能や Compiler API、Pluggable Annotation Processing API の導入など、別の側面からの EoD のサポートが行われています。

診断、モニタリング&管理

診断に関しては OutOfMemoryError が発生したときにスタック・トレースが出力されるようになり、エラーの発生したメソッドが簡単に特定できるようになりました。モニタリングや管理機能では、今まで Solaris や Linux 版の JDK でしか利用できなかったツールのいくつかが Windows 版でも利用できるようになりました。また、JMX の改善も行われ、起動時のオプションに -Dcom.sun.management.jmxremote を指定していない場合でも jconsole で接続できるようになるなど、より利用しやすくなりました。

Enterprise Desktop

デスクトップ機能に関しては、非常に多くの機能強化や改善が行われました。システム・トレイのサポートや指定したファイルを関連付けられたアプリケーションで起動する機能など、ネイティブ・デスクトップとの統合が図られています。また、JTable のソーティング/フィルタリング機能やテキスト・コンポーネントの印刷機能、Java Web Start の改善など、幅広く機能強化が行われています。

XML & Web サービス

XML 関係では JAXB 2.0 や JAX-WS 2.0 へのバージョンアップのほか、StAX(Streaming API for XML)や XML Digital Signature API が新しくサポートされました。また、Web サービス関係では Web サービス・メタデータが導入され、Web サービスの開発にアノテーションを利用することができるようになりました。

透明性

今回の最大の特徴として、JDK の開発がオープン・ソース型の開発スタイルで行われている点が挙げられます。コミュニティの参加によって、Java という技術がよりオープンなものになりました。

まとめ

今回は J2SE 改め Java SE のメジャー・バージョンアップである Java SE 6 "Mustang" の概要について解説しました。次回以降はそれぞれの機能について詳しく解説していきます。

次回はデータベース関係の機能、特に JDBC 4.0 の Ease of Development に焦点を当てて解説を行います。

 

↑このページの先頭へ

こちらもチェック!

PR
  • XMLDB.jp
  • シナジーマーケティング研究開発グループブログ