5 カスタムJREについて
Oracle Java SE Embeddedテクノロジで作成するカスタムJREの基本概念について学習します。
このページのトピックは次のとおりです。
カスタムJRE作成時の選択肢
領域の最適化により、Oracle Java SE Embeddedで作成された完全なJREは、機能的に同等のJava SE JREよりも小さくなります。
さらに、約12 MBの静的フットプリントまでのステップでも、さらに小さいJREを作成できます。 jrecreate
コマンドを使用して、予想されるワークロードおよびレスポンス目標に一致するカスタムJREを構築するコンポーネントを選択できます。
「図5-1」は、カスタムJREに入るコンポーネントと、Oracle Java SE Embeddedコンポーネントから様々な機能およびサイズのJREを作成する方法を示します。
「図5-1」の左側に表示されるOracle Java SE Embedded JREコンポーネントの詳細は、次のリンクを参照してください:
-
プロファイルAPI: 「コンパクト・プロファイルについて」を参照してください
-
JVMs: 「カスタムJREについて」を参照してください
-
JavaFXコンポーネント: Oracle Java SE EmbeddedのJavaFXコンポーネント
「図5-1」の右側には、Oracle Java SE Embeddedに付属するjrecreate
ツールを使用して作成されたカスタムJREの例が示されています。 この図では、最も単純なJREは、最小限のJVMおよびcompact1プロファイルAPIで構成されます。 より複雑なのは、クライアントJVM、compact2プロファイルAPIおよび基本グラフィックです。 最大かつ最も有能なのは、サーバーJVM、完全なJRE API、コントロール付きのグラフィック、および暗号トークン・インタフェースです。
暗号化サービス・プロバイダ
「暗号操作」の場合、Java言語はアプリケーション開発者用の標準APIを定義します。このAPIは、置換可能なサービス・プロバイダによって実装されます。
Oracle Java SE Embeddedには、2つのオプション・プロバイダ・パッケージが含まれています。 アプリケーションの必要性に応じて、いずれかまたは両方を選択します。 jrecreate
ツールを使用してプロバイダ・パッケージを追加する方法は、「jrecreateを使用したJREの作成」を参照してください。 次のパッケージを含めます。
-
RSA Securityによる「暗号トークン・インタフェース標準PKCS#11パッケージ」。 このパッケージは、スマート・カードまたはハードウェア・セキュリティ・モジュールを備えたデバイス用です。 この拡張により、JREの静的サイズが約234 KB増加します。
-
「楕円曲線暗号(ECC)パッケージ」。RSA公開キー標準の代替です。 この拡張により、JREの静的サイズが約36 KB増加します。
ロケール
デフォルトでは、jrecreate
コマンドは、米国英語の(en_us)ロケールを作成します。 オプションで、すべてのJava SEロケールを作成します。 Java SEロケールの詳細は、「JREでサポートされているロケールのリスト」を参照してください。 JREにオプションのロケールを追加するには、「jrecreateオプション」の--extension
オプションを参照してください。
文字エンコーディング
デフォルトでは、jrecreate
コマンドによって「文字エンコーディングの基本セット」が作成されます。 オプションで、同じURLで定義された拡張セットを作成します。 オプションの文字エンコーディングを追加するには、「jrecreateオプション」の--extension
オプションを参照してください。
Nashorn JavaScriptエンジン
すべてのOracle Java SEプロファイルおよび完全なJREには、Javaソース・ファイルでのスクリプト言語文をサポートするjavax.scripting
APIが含まれています。 実行時に、スクリプト文はユーザー指定のスクリプト・エンジンによって実行されます。
Nashorn JavaScriptエンジンをJREに含めるには、「jrecreateオプション」の--extension
オプションを参照してください。
Nashorn JavaScriptエンジンの詳細は、https://blogs.oracle.com/nashorn/entry/welcome_to_the_nashorn_blog
を参照してください。
JSR 197仕様JAR
JSR 197は、Java 2 Platform、Standard Edition、バージョン1.0用のGeneric Connection Framework (GCF)オプション・パッケージの仕様です。 APIは、CLDC 1.0 GCFと同等です。 MIDP 2.0およびFP 1.1には、より完全なGCF API (たとえば、HTTPS)があります。
埋込みパッケージでは、次のものがサポートされています:
-
file
ローカル・ファイルの読取り、書込みおよび読取り/書込み
-
datagram
UDPの送受信
-
socket
TCPクライアントおよびサーバー
-
http
HTTPクライアント
Oracle Java SE Embeddedで提供されるJSR 197 JARには、機能実装がないことに注意してください。 すべてのファンクションをjava.io
およびjava.net
パッケージに委任します。
JSR 197仕様APIは、Oracle Java SE Embeddedダウンロード・バンドルでJARファイルとして提供されます。 jrecreate
コマンドではサポートされていませんが、手動で追加できます。 JARファイルは、Oracle Java SE Embeddedインストールの次のディレクトリにあります:
ejdk
<version>
/
<platform>
/options/gcf/lib
このロケーションは、必要なアプリケーションのクラスパスにある必要があり、またはJREのlib/ext
ディレクトリに標準拡張として追加できます。