Starlark での Java コンパイルをサポートするユーティリティ。
メンバー
BootClassPathInfo
Provider java_common.BootClassPathInfo
compile
struct java_common.compile(ctx, *, source_jars=[], source_files=[], output, output_source_jar=None, javac_opts=[], deps=[], runtime_deps=[], exports=[], plugins=[], exported_plugins=[], native_libraries=[], annotation_processor_additional_inputs=[], annotation_processor_additional_outputs=[], strict_deps='ERROR', java_toolchain, bootclasspath=None, host_javabase=None, sourcepath=[], resources=[], resource_jars=[], classpath_resources=[], neverlink=False, enable_annotation_processing=True, enable_compile_jar_action=True, add_exports=[], add_opens=[])
パラメータ
パラメータ | 説明 |
---|---|
ctx
|
必須 ルールのコンテキスト。 |
source_jars
|
ファイルのシーケンス
デフォルトは [] コンパイルする JAR のリスト。source_jars または source_files を少なくとも 1 つ指定する必要があります。 |
source_files
|
ファイルのシーケンス
デフォルトは [] コンパイルする Java ソースファイルのリスト。source_jars または source_files を少なくとも 1 つ指定する必要があります。 |
output
|
必須 |
output_source_jar
|
File:または None
デフォルトは None です 出力ソースの jar。省略可。設定しない場合のデフォルトは `{output_jar}-src.jar` です。 |
javac_opts
|
文字列のシーケンス。
デフォルトは [] 目的の javac オプションのリスト。省略可。 |
deps
|
構造体のシーケンス。
デフォルトは [] 依存関係のリスト。省略可。 |
runtime_deps
|
構造体のシーケンス。
デフォルトは [] ランタイム依存関係のリスト。省略可。 |
exports
|
構造体のシーケンス。
デフォルトは [] エクスポートのリスト。省略可。 |
plugins
|
構造体のシーケンス。または構造体のシーケンス
デフォルトは [] ですプラグインのリスト。省略可。 |
exported_plugins
|
構造体のシーケンス。または構造体のシーケンス
デフォルトは [] ですエクスポートされたプラグインのリスト。省略可。 |
native_libraries
|
CcInfo のシーケンス。
デフォルトは [] このライブラリに必要なネイティブ ライブラリ依存関係を CC に含めます。 |
annotation_processor_additional_inputs
|
ファイルのシーケンス
デフォルトは [] Java コンパイル アクションがアノテーション処理のために Java ソースに加えて行う入力のリスト。 |
annotation_processor_additional_outputs
|
ファイルのシーケンス
デフォルトは [] Java コンパイル アクションが、アノテーション処理のクラス jar に加えて出力する出力のリスト。 |
strict_deps
|
デフォルトは 'ERROR' 厳格な依存関係の処理方法を指定する文字列。有効な値: 'OFF'、'ERROR'、'WARN'「DEFAULT」を指定します。詳細については、/docs/user-manual#flag--strict_java_deps をご覧ください。デフォルトは「ERROR」です。 |
java_toolchain
|
必須 このコンパイルに使用される JavaToolchainInfo。必須。 |
bootclasspath
|
デフォルトは None このコンパイルに使用される BootClassPathInfo。この要素が存在する場合は、提供された java_ツールチェーン に関連付けられている bootclasspath がオーバーライドされます。省略可。 |
host_javabase
|
デフォルトは None 非推奨。このパラメータは非推奨となっており、まもなく削除されます。これに依存しないでください。 --+incompatible_java_common_parameters により無効になります。このフラグを使用して、コードが間もなく削除される可能性があることを確認します。非推奨: このパラメータは削除できます(host_javabase は java_ツールチェーンで提供されます)。 |
sourcepath
|
ファイルのシーケンス
デフォルトは [] |
resources
|
ファイルのシーケンス
デフォルトは [] |
resource_jars
|
ファイルのシーケンス
デフォルトは [] |
classpath_resources
|
ファイルのシーケンス
デフォルトは [] |
neverlink
|
デフォルトは False |
enable_annotation_processing
|
デフォルトは True このコンパイルのアノテーション処理を無効にします。これにより、プラグインまたは依存関係の export_plugins で提供されるアノテーション プロセッサが無視されます。 |
enable_compile_jar_action
|
デフォルトは True ヘッダーのコンパイルまたは ijar の作成を有効にします。False に設定すると、依存のコンパイル クラスパスでクラス jar 全体が強制的に使用されます。これは、依存関係のないバイナリなど、ライブラリ以外のターゲットで使用することを想定したものです。 |
add_exports
|
文字列のシーケンス。
デフォルトは [] このライブラリに、指定された |
add_opens
|
文字列のシーケンス。
デフォルトは [] このライブラリに、指定された |
JavaRuntimeInfo
Provider java_common.JavaRuntimeInfo
JavaToolchainInfo
Provider java_common.JavaToolchainInfo
merge
struct java_common.merge(providers)
パラメータ
パラメータ | 説明 |
---|---|
providers
|
構造体のシーケンス。
必須 統合するプロバイダのリスト。 |
pack_sources
File java_common.pack_sources(actions, *, output_jar=None, output_source_jar=None, sources=[], source_jars=[], java_toolchain, host_javabase=None)
JavaInfo#source_jar
パラメータ
パラメータ | 説明 |
---|---|
actions
|
必須 ctx.actions |
output_jar
|
File:または None
デフォルトは None です 非推奨。このパラメータは非推奨となっており、まもなく削除されます。これに依存しないでください。 --+incompatible_java_common_parameters により無効になります。このフラグを使用して、コードが間もなく削除される可能性があることを確認します。非推奨: ルールの出力 jar。結果のソース JAR に名前を付けるために使用されます。このパラメータにより、output_source_jar パラメータが「{output_jar}-src.jar」に設定されます。代わりに output_source_jar パラメータを直接使用してください。 |
output_source_jar
|
File:または None
デフォルトは None です 出力ソースの jar。 |
sources
|
ファイルのシーケンス
デフォルトは [] ソース JAR にパッキングされる Java ソースファイルのリスト。 |
source_jars
|
ファイルのシーケンス
デフォルトは [] ソース JAR にパッキングされるソース JAR のリスト。 |
java_toolchain
|
必須 ijar ツールを見つけるために使用する JavaToolchainInfo。 |
host_javabase
|
デフォルトは None 非推奨。このパラメータは非推奨となっており、まもなく削除されます。これに依存しないでください。 --+incompatible_java_common_parameters により無効になります。このフラグを使用して、コードが間もなく削除される可能性があることを確認します。非推奨: このパラメータは削除できます(host_javabase は java_ツールチェーンで提供されます)。 |
run_ijar
File java_common.run_ijar(actions, *, jar, target_label=None, java_toolchain)
JavaInfo#compile_jar
に渡されます。
パラメータ
パラメータ | 説明 |
---|---|
actions
|
必須 ctx.actions |
jar
|
必須 ijar を実行する jar。 |
target_label
|
ラベル:または None
デフォルトは None です 瓶に刻印するターゲット ラベル。 add_dep のサポートに使用されます。通常は、ctx.label を渡して現在のルールのラベルを jar にスタンプします。
|
java_toolchain
|
必須 ijar ツールを見つけるために使用する JavaToolchainInfo。 |
stamp_jar
File java_common.stamp_jar(actions, *, jar, target_label, java_toolchain)
add_dep
サポート用のターゲット ラベルの付いた JAR をスタンプします。通常、戻り値は JavaInfo#compile_jar
に渡されます。可能な場合は run_ijar
を使用することをおすすめします。
パラメータ
パラメータ | 説明 |
---|---|
actions
|
必須 ctx.actions |
jar
|
必須 stamp_jar を実行する jar。 |
target_label
|
必須 瓶に刻印するターゲット ラベル。 add_dep のサポートに使用されます。通常は、ctx.label を渡して現在のルールのラベルを jar にスタンプします。
|
java_toolchain
|
必須 stamp_jar ツールを見つけるために使用する JavaToolchainInfo。 |