機械翻訳について

jlinkコマンド

名前

jlink - 一連のモジュールとその依存性を作成し、カスタム・ランタイム・イメージに最適化

シノプシス

jlink [options] --module-path modulepath --add-modules module [, module...]

options
スペースで区切ったコマンド行オプション。 「jlinkオプション」を参照してください。
modulepath
jlinkツールが監視可能なモジュールを検出するパス。 これらのモジュールは、モジュラJARファイル、JMODファイル、展開したモジュールのいずれかです。
module
ランタイム・イメージに追加するモジュールの名前。 jlinkツールは、これらのモジュールとその推移的な依存関係を追加します。

説明

jlinkツールは、一連のモジュールとその推移的な依存関係をリンクして、カスタム・ランタイム・イメージを作成します。

ノート:

開発者はカスタム・ランタイム・イメージの更新を担当します。

--add-modules mod [, mod...]
指定されたモジュールmodを、ルート・モジュールのデフォルト・セットに追加します。 ルート・モジュールのデフォルト・セットは空です。
--bind-services
サービス・プロバイダ・モジュールとその依存性をリンクします。
-c ={0|1|2}または--compress={0|1|2}

リソースの圧縮を有効にします。

  • 0: 圧縮なし
  • 1: 定数文字列の共有
  • 2: ZIP
--disable-plugin pluginname
指定されたプラグインを無効にします。 サポートされるプラグインのリストは、「jlinkのプラグイン」を参照してください。
--endian {little|big}
生成されるイメージのバイト順を指定します。 デフォルト値は、システムのアーキテクチャの形式です。
-hまたは--help
ヘルプ・メッセージを出力します。
--ignore-signing-information
ランタイム・イメージで署名されたモジュール式JARがリンクされている場合、致命的なエラーを抑制します。 署名付きモジュラJARの署名関連ファイルは、ランタイム・イメージにコピーされません。
--launcher command = moduleまたは--launcher command = module / main
モジュールのコマンド名、またはモジュールとメイン・クラス(モジュールとメイン・クラス名はスラッシュで区切られています。(/))のコマンド名を指定します。
--limit-modules mod [, mod...]
観測可能なモジュールの宇宙を、指定されたモジュールmodとメイン・モジュール(存在する場合)、および--add-modulesオプションで指定したその他のモジュール(ある場合)の推移的閉鎖の対象に制限します。
--list-plugins
コマンド行オプションによってアクセスできる使用可能なプラグインをリストします(「jlinkのプラグイン」を参照)。
-pまたは--module-path modulepath

モジュール・パスを指定します。

このオプションが指定されていない場合、デフォルトのモジュール・パスは$JAVA_HOME/jmodsとなります。 このディレクトリには、java.baseモジュールと、その他の標準モジュールおよびJDKモジュールが含まれます。 このオプションが指定されているが、java.baseモジュールから解決できない場合は、jlinkコマンドによって$JAVA_HOME/jmodsがモジュール・パスに追加されます。

--no-header-files
ヘッダー・ファイルを除外します。
--no-man-pages
マニュアル・ページを除外します。
--output path
生成されたランタイム・イメージのロケーションを指定します。
--save-opts filename
jlinkオプションを指定されたファイルに保存します。
--suggest-providers [name, ...]
指定されたサービス・タイプをモジュール・パスから実装するプロバイダを推奨します。
--version
バージョン情報を出力します。
@filename

指定したファイルからオプションを読み込みます。

オプション・ファイルとは、オプションと、通常コマンド・プロンプトに入力する値が含まれるテキスト・ファイルです。 オプションは、1行または複数行に表示されます。 パス名には環境変数を指定しないでください。 行の先頭にハッシュ記号(#)を付けることによって、行をコメント・アウトできます。

次に、jlinkコマンドのオプション・ファイルの例を示します:

#Wed Dec 07 00:40:19 EST 2016
--module-path mlib
--add-modules com.greetings
--output greetingsapp

ノート:

この項に記載されていないプラグインは、サポートされておらず、変更される可能性があります。

pattern-listを必要とするプラグイン・オプションの場合、値は要素のコンマ区切りリストであり、各要素は次のいずれかの形式を使用します:

使用可能なすべてのプラグインの完全なリストを表示するには、コマンドjlink --list-pluginsを実行します。

プラグインcompress

オプション
--compress={0|1|2}[:filter=pattern-list]
説明

出力イメージ内のすべてのリソースを圧縮します。

  • レベル0: 圧縮なし
  • レベル1: 定数文字列の共有
  • レベル2: ZIP

オプションのpattern-listフィルタを指定して、含めるファイルのパターンをリストできます。

プラグインinclude-locales

オプション
--include-locales=langtag[,langtag]*
説明

langtagがBCP 47言語タグであるロケールのリストが含まれます。 このオプションは、RFC 4647で定義されているロケール・マッチングをサポートします。 このオプションを使用する場合は、必ずモジュールjdk.localedataを追加します。

例:

--add-modules jdk.localedata --include-locales=en,ja,*-IN

プラグインorder-resources

オプション
--order-resources=pattern-list
説明

指定されたパスを優先順位に従って並べ替えます。 @filenameが指定されている場合、pattern-listの各行は、パスを順序付けるための完全一致である必要があります。

例:

--order-resources=/module-info.class,@classlist,/java.base/java/lang/

プラグインstrip-debug

オプション
--strip-debug
説明
出力イメージからデバッグ情報を取り除きます。

次のコマンドは、greetingsappディレクトリにランタイム・イメージを作成します。 このコマンドは、モジュール定義がディレクトリmlibに含まれているモジュールcom.greetingsをリンクします。

jlink --module-path mlib --add-modules com.greetings --output greetingsapp

次のコマンドは、ランタイム・イメージgreetingsapp内のモジュールをリストします。

greetingsapp/bin/java --list-modules
com.greetings
java.base@11
java.logging@11
org.astro@1.0

次のコマンドは、デバッグ・シンボルの取り除かれている圧縮されたディレクトリ内に実行時イメージを作成し、圧縮を使用して領域を減らし、フランス語のロケール情報を含めます:

jlink --add-modules jdk.localedata --strip-debug --compress=2 --include-locales=fr --output compressedrt

次の例では、ランタイム・イメージcompressedrtのサイズをfr_rtと比較します。このサイズは、デバッグ・シンボルが削除されておらず、圧縮は使用されません:

jlink --add-modules jdk.localedata --include-locales=fr --output fr_rt

du -sh ./compressedrt ./fr_rt
23M     ./compressedrt
36M     ./fr_rt

次の例では、java.security.Providerを実装するプロバイダをリストします:

jlink --suggest-providers java.security.Provider

Suggested providers:
  java.naming provides java.security.Provider used by java.base
  java.security.jgss provides java.security.Provider used by java.base
  java.security.sasl provides java.security.Provider used by java.base
  java.smartcardio provides java.security.Provider used by java.base
  java.xml.crypto provides java.security.Provider used by java.base
  jdk.crypto.cryptoki provides java.security.Provider used by java.base
  jdk.crypto.ec provides java.security.Provider used by java.base
  jdk.crypto.mscapi provides java.security.Provider used by java.base
  jdk.security.jgss provides java.security.Provider used by java.base

次の例では、mybuildという名前のカスタム・ランタイム・イメージを作成します。このイメージには、java.namingjdk.crypto.cryptokiのみが含まれ、他のプロバイダは含まれません。 これらの依存性は、モジュール・パスに存在する必要があります。

jlink --add-modules java.naming,jdk.crypto.cryptoki --output mybuild

次のコマンドは、ルート・モジュールから解決されたモジュールをサービス・バインディングにリンクすることを除き、greetingsappというランタイム・イメージを作成するコマンドと似ています。Configuration.resolveAndBindメソッドを参照してください。

jlink --module-path mlib --add-modules com.greetings --output greetingsapp --bind-services

次のコマンドは、このコマンドによって作成されたランタイム・イメージgreetingsapp内のモジュールをリストします:

greetingsapp/bin/java --list-modules
com.greetings
java.base@11
java.compiler@11
java.datatransfer@11
java.desktop@11
java.logging@11
java.management@11
java.management.rmi@11
java.naming@11
java.prefs@11
java.rmi@11
java.security.jgss@11
java.security.sasl@11
java.smartcardio@11
java.xml@11
java.xml.crypto@11
jdk.accessibility@11
jdk.charsets@11
jdk.compiler@11
jdk.crypto.cryptoki@11
jdk.crypto.ec@11
jdk.crypto.mscapi@11
jdk.internal.opt@11
jdk.jartool@11
jdk.javadoc@11
jdk.jdeps@11
jdk.jfr@11
jdk.jlink@11
jdk.localedata@11
jdk.management@11
jdk.management.jfr@11
jdk.naming.dns@11
jdk.naming.rmi@11
jdk.security.auth@11
jdk.security.jgss@11
jdk.zipfs@11
org.astro@1.0