「Java SE 9」「Java EE 8」、一般提供を開始:約3年半ぶりのメジャーアップグレード
Oracleが「Java SE 9」「Java EE 8」「Java EE 8 SDK」の正式版を公開。Java SE 9は3年半ぶりのメジャーアップグレードで150以上の新機能を提供。Java EE 8ではクラウドやマイクロサービスへの対応が進められた。
Oracleは2017年9月21日(米国時間)、「Java SE(Standard Edition) 9/JDK(Java Development Kit) 9」「Java EE 8(Java Platform Enterprise Edition 8)」「Java EE 8 Software Development Kit」の一般提供を開始したと発表した。
Java SE 9は、Javaにおける約3年半ぶりのメジャーアップグレードバージョン。新モジュールシステムなど150以上の新機能が提供され、Java SEプラットフォームのスケーラビリティ、セキュリテイ、パフォーマンス管理、開発のしやすさを向上させた。「Java SE 9 Platform Specification」の運用対応実装であり、同仕様はJava EE 8とともに、最近Java Community Process(JCP)で承認されている。
Java EE 8では8つの主要な仕様がアップデートされ、クラウドやマイクロサービス向けにJava EEプラットフォームのモダナイズと簡素化が行われている。
Java SE 9(JDK 9)
Java SE 9で最大の特徴は、これまで「Project Jigsaw」として開発されていた新たなモジュールシステム「Java Platform Module System(JPMS)」の実装が挙げられる。JPMSによって開発者は、洗練されたアプリケーションのアセンブルと保守をこれまで以上に確実に行えるようになる。また、JPMSはJDK自体の柔軟性も向上させる。クラウドへの導入時に、開発者はJDKの中でアプリケーションの実行に必要な部分のみをバンドルできる。
この他の主要機能は以下の通り。
- jshell:簡単にAPIを調べて言語機能を試せるインタラクティブなREPL(Read-Eval-Print-Loop)ツールを利用可能にする
- Javadocの改善:APIドキュメント自体に検索機能が追加され、新しいAPIについて、また、各クラスを定義するモジュール、インタフェースについて簡単に学習できるようになる
- Streams APIの強化:ストリームのソースとして機能するJava SE APIセットの拡張により、開発者の生産性を高める。メソッドの追加によって、条件に応じたストリームからの項目の追加、削除、ストリームの要素での繰り返しなどを可能にする。
この他Oracleは、Java SEとJava EEの今後の開発計画とリリース方法に関する変更も発表した。
Java SEについては、機能主導のリリースモデルから、時間主導のリリースモデルに変更し、約6カ月のリリース間隔で新バージョンを投入していく。この変更に伴い、OracleはGeneral Public License(GPL)でのOpenJDKビルドの提供も行う。さらに、Oracle JDKとOpenJDKの整合性を高めるために、Java Flight Recorderなど、Oracle JDKの従来の商用機能をOpenJDKに提供する。
Java EE 8
Oracleは、他ベンダーやコミュニティーとの協力を通じて、Java EEテクノロジーをEclipse Foundationに移行する意向を発表した。Java EEテクノロジーの移行とEclipse内での継続的なガバナンスとプロセスについては2017年9月現在、Oracle、Eclipse、他のコミュニティーメンバーが詳細を詰めている。
Java EE 8の主要な機能は以下の通り。
- Servlet 4.0でのHTTP/2のサポート
- JSON-P 1.1の新しいJSON(JavaScript Object Notation)バインディングAPIと各種強化
- JAX-RS(Java API for RESTful Web Services)の拡張によるサーバ送信イベントと新しいリアクティブクライアントAPIのサポート
- クラウドおよびPaaS(Platform as a Service)ベースのアプリケーションのための新しいセキュリティAPI
- 非同期イベントのサポートを含むCDI(Contexts and Dependency Injection)の機能強化
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- さよならJavaアプレット。JDK 9からWebブラウザプラグイン機能を排除
ついに、Javaアプレットとお別れをする時が近づいてきた。 - Java EE 8/9はマイクロサービス、リアクティブに向かう――MVCは生き残れるのか
デジタルトランスフォーメーション時代に生き残れるエンジニアに求められるものとは何か。長らく、日本のJavaコミュニティで存在感を示し続け、現在は日本マイクロソフトでJavaエバンジェリストとして活動する寺田佳央氏に聞いた。 - 初心者のためのJavaラムダ式入門とJDKのインストール、IDEの環境構築
本連載では、今までJavaの経験はあっても「ラムダ式は、まだ知らない」という人を対象にラムダ式について解説していきます。初回は、ラムダ式の概要と利点、必要性、JDK 8のセットアップ、NetBeans、IntelliJ IDEA、Eclipseの環境構築について。 - Java 8時代の開発者のためのデバッグ/トラブル解決の基本・応用テクニック〜JJUG CCC 2014 Springまとめリポート(後編)
Java開発における3大トラブルと対策、IDEのデバッガー活用の必要性、Java 8より導入された新しいメモリ領域を使いこなすためのテクニック、独自のトランザクショナルメモリ機構を実装した有効性などをお伝えする。