原文はこちら。
https://blogs.oracle.com/java/diving-into-the-modular-system
JDK 9でモジュラーシステムが導入されると、開発者は小さなデバイスやクラウドの別インスタンスなどでの開発のためにJava SEのサブセットを利用することができるようになります。今日、120機能のうち95がJDK 9早期アクセスリリースに搭載されています。早期アクセスリリースをダウンロードしてJDK 9の新機能をテストするよい機会です。
JDK 9リリースのスケジュールや機能はJava Enhancement Proposal (JEP) プロセスを通じて提案され、追跡されています。モジュラーシステム自体に関するJEPは、JDKおよびソースコードの両方に影響があります。以下がそのJEPです。
https://blogs.oracle.com/java/diving-into-the-modular-system
JDK 9でモジュラーシステムが導入されると、開発者は小さなデバイスやクラウドの別インスタンスなどでの開発のためにJava SEのサブセットを利用することができるようになります。今日、120機能のうち95がJDK 9早期アクセスリリースに搭載されています。早期アクセスリリースをダウンロードしてJDK 9の新機能をテストするよい機会です。
JDK 9 Early AccessモジュラーシステムはProject Jigsawで完全に説明されています。
http://jdk9.java.net/download
Project Jigsawその目的は、開発者がJava SEおよびJava EE Platformのためのライブラリや大きなアプリケーションをより簡単に構築、メンテナンスできるようにすることです。これは実質的に柔軟性、パフォーマンス、スケーラビリティ、Java Platformのセキュリティを向上します。
http://openjdk.java.net/projects/jigsaw/
JDK 9 Early Access with Project Jigsaw
https://jdk9.java.net/jigsaw/
JDK 9リリースのスケジュールや機能はJava Enhancement Proposal (JEP) プロセスを通じて提案され、追跡されています。モジュラーシステム自体に関するJEPは、JDKおよびソースコードの両方に影響があります。以下がそのJEPです。
- JEP 200: The Modular JDK
モジュール構造を定義するSDK - JEP 201: Modular Source Code
ソースコードのモジュール化 - JEP 220: Modular Run-Time Images
モジュラーランタイムイメージの導入 - JEP 261: Module System
Java Platform Module Systemの実装。JSR 376で指定されているように、関連するJDK固有の変更や機能強化とともに実装する。 - JEP 260: Encapsulate Most Internal APIs
ほとんどのJDK内部APIがデフォルトではアクセスできなくなるが、一部の重要かつ幅広く使われている内部APIは、サポートされる置き換え対象が出てくるまでアクセス可能なまま残す。
- JEP 222: JShell The Java Shell (Read-Eval-Print Loop)
JShellはインタラクティブにJava言語の宣言、ステートメント、式を評価する方法を提供する。 - JEP 282: Jlink: the Java Linker
JEP 220に定義されているように、モジュールのセットと依存性をカスタムランタイムイメージに組み立て、最適化する - JEP 259: Stack-Walking API
スタックトレースの情報を簡単にフィルタリングし、遅延アクセスすることができる、スタックをたどるための標準API - JEP 269: Convenience Factory Methods for Collections
Javaプログラミング言語にコレクションリテラルがないことのデメリットを和らげるための、要素数の少ないコレクションやマップのインスタンスを作成できるAPI - JEP 264: Platform Logging API and Service.
プラットフォーム・クラスがAPIを使ってメッセージをログ出力することができる。サービスインターフェースを持つこうしたメッセージのコンシューマのためのサービス・インターフェースも併せて提供する。 - JEP 247: Compile for Older Platform Versions.
選択された旧バージョンのプラットフォームで実行できるように、JavacでJavaプログラムをコンパイルする - JEP 238: Multi-Release JAR Files.
JARファイルフォーマットを拡張し、複数のJavaリリース固有のクラスファイルのバージョンを単一アーカイブで共存できるようにする - JEP 272: Platform-Specific Desktop Features
新しいパブリックAPIを定義し、タスクバーやDockとのやりとり、システムやアプリケーションイベントのリスニングといった、プラットフォーム固有のデスクトップ機能にアクセスできるようにする - JEP 262: TIFF Image
Image I/O Framework (javax.imageio) は、Java SEに含まれており、現在のTIFFフォーマットを含むイメージ・コーデックをプラグインする方法を提供する - JEP 251: Multi-Resolution Images
異なる解像度の画像のセットを単一のマルチ解像度画像にカプセル化することが可能になる、java.awt.imageのパッケージの新しいAPI
- Modularity in Java 9
https://blogs.oracle.com/java/modularity-in-java-9
https://orablogs-jp.blogspot.jp/2015/11/modularity-in-java-9.html - JDK 9 EA builds
http://jdk9.java.net/download - Project Jigsaw EA builds
http://jdk9.java.net/jigsaw - Get Ready for JDK 9
https://blogs.oracle.com/java/get-ready-jdk9
https://orablogs-jp.blogspot.jp/2016/09/get-ready-for-java-9.html