メンバー
- JavaInfo
- annotation_processing
- api_generating_plugins
- compilation_info
- compile_jars
- full_compile_jars
- java_outputs
- module_flags_info
- 出力
- プラグイン
- runtime_output_jars
- source_jars
- to_json
- to_proto
- transitive_compile_time_jars
- transitive_deps
- transitive_native_libraries
- transitive_runtime_deps
- transitive_runtime_jars
- transitive_source_jars
JavaInfo
JavaInfo JavaInfo(output_jar, compile_jar, source_jar=None, compile_jdeps=None, generated_class_jar=None, generated_source_jar=None, native_headers_jar=None, manifest_proto=None, neverlink=False, deps=[], runtime_deps=[], exports=[], exported_plugins=[], jdeps=None, native_libraries=[])
JavaInfo
コンストラクタ。
パラメータ
パラメータ | 説明 |
---|---|
output_jar
|
必須 コンパイルの結果として作成された JAR(javac、Scalac など)。 |
compile_jar
|
File; or None (必須)output_jar の代わりにコンパイル時の依存関係として追加される jar。通常、これは run_ijar によって生成された ijar です。ijar を使用できない場合は、代わりに stamp_ijar の出力の使用を検討してください。どちらも使用しない場合は、output_jar を渡します。このパラメータが None に設定される場合、いくつかの特殊なケースがあります。たとえば、リソースを含む jar を追加する場合や、java_binary などのターミナルルールで使用する場合などです。 |
source_jar
|
File; or None ;
default = None出力 jar の作成に使用されたソース JAR。 pack_sources を使用して、このソース JAR を生成します。
|
compile_jdeps
|
File; or None ;
default = NoneJavaCompileAction で使用されるコンパイル時依存関係に関する jdeps 情報。これは、Bazel に含まれる deps.proto protobuf を使用してエンコードされたバイナリ プロトコルである必要があります。利用可能な場合、このファイルは通常、ヘッダー コンパイラによって生成されます。 |
generated_class_jar
|
File; or None ;
default = Noneアノテーション処理中に生成されたソースからコンパイルされたクラスファイルを含む jar ファイル。 |
generated_source_jar
|
File; or None ;
default = Noneアノテーション処理の結果として作成されたソース JAR。 |
native_headers_jar
|
File; or None ;
default = Noneネイティブ メソッド実装をサポートする CC ヘッダー ファイルを含む JAR(通常は javac -h の出力)。 |
manifest_proto
|
File; or None ;
default = なしルール出力のマニフェスト情報(利用可能な場合)。これは、Bazel に含まれる manifest.proto protobuf を使用してエンコードされたバイナリ proto である必要があります。IDE などのツールで、この情報を使用して処理を効率化できます。 |
neverlink
|
default = False true の場合、このライブラリは実行時ではなくコンパイルにのみ使用します。 |
deps
|
sequence of JavaInfos ;
default = []出力 jar の作成に使用されたコンパイル時の依存関係。 |
runtime_deps
|
sequence of JavaInfos ;
default = []このライブラリに必要なランタイム依存関係。 |
exports
|
sequence of JavaInfos ;
default = []このライブラリのユーザーが利用できるようにするライブラリ。java_library.exports もご覧ください。 |
exported_plugins
|
sequence of JavaPluginInfos ;
default = []エクスポートされたプラグインのリスト。省略可。 |
jdeps
|
File; or None ;
default = なしルール出力の jdeps 情報(利用可能な場合)。これは、Bazel に含まれる deps.proto protobuf を使用してエンコードされたバイナリ プロトコルである必要があります。利用可能な場合、このファイルは通常コンパイラによって生成されます。IDE などのツールで、この情報を使用して処理を効率化できます。 |
native_libraries
|
sequence of CcInfos ;
default = []このライブラリに必要なネイティブ ライブラリ依存関係を CC します。 |
annotation_processing
java_annotation_processing JavaInfo.annotation_processingこの Java/Java に似たターゲットに適用されたアノテーション プロセッサに関する情報を返します。
非推奨: 代わりに plugins
を使用してください(消費ターゲットによって適用されるアノテーション プロセッサに関する情報を返します)。None
を返す場合があります。
api_generating_plugins
JavaPluginData JavaInfo.api_generating_pluginsこのターゲットによって定義またはエクスポートされた API を生成するプラグインに関するデータを返します。
これらのアノテーション プロセッサは、(メソッド シグネチャを含む)ヘッダー JAR を生成する前に Java ターゲットに適用されます。API プラグインが存在しない場合、ヘッダー JAR がソースから生成されるため、クリティカル パスが削減されます。
api_generating_plugins
は plugins
のサブセットです。
compilation_info
java_compilation_info JavaInfo.compilation_infoこの Java に似たターゲットのコンパイル情報を返します。
None
を返す場合があります。compile_jars
depset JavaInfo.compile_jarsコンパイル時に、このターゲットが必要とする JAR を直接返します。ルールの実装でインターフェース JAR の作成が選択されたかどうかに応じて、interface jar(ijar または hjar)、通常の JAR、またはその両方を使用できます。
full_compile_jars
depset JavaInfo.full_compile_jarsこのターゲットが必要とする通常の完全なコンパイル時間 JAR を直接返します。これらは<ph type="x-smartling-placeholder">
- </ph>です。
-
JavaInfo.compile_jars
によって返されるインターフェース JAR の対応する通常の JAR -
JavaInfo.compile_jars
から返される通常の(完全な) JAR
注: JavaInfo.compile_jars
は、インターフェース JAR と通常の JAR を混在させて返すことができます。
このメソッドは、インターフェース JAR がルールセット(一部の Scala ターゲットなど)で機能しない場合にのみ使用してください。Java のみのターゲットを扱う場合は、JavaInfo.compile_jars
を介してインターフェース JAR を使用することをおすすめします。
java_outputs
list JavaInfo.java_outputsこの Java/Java に似たターゲットの出力に関する情報を返します。
module_flags_info
JavaModuleFlagsProvider JavaInfo.module_flags_infoJava モジュール フラグの構成を返します。
結果
java_output_jars JavaInfo.outputsこの Java/Java に似たターゲットの出力に関する情報を返します。非推奨: java_outputs を使用してください。
None
を返す場合があります。プラグイン
JavaPluginData JavaInfo.plugins消費ターゲットが適用する必要があるすべてのプラグインに関するデータを返します。
これは通常、java_plugin
自体か、1 つ以上のプラグインをエクスポートする java_library
です。
java_library
はアノテーション処理を実行し、このフィールドのすべてのプラグインを deps
属性と plugins
属性で指定します。
runtime_output_jars
sequence JavaInfo.runtime_output_jarsこの Java/Java に似たターゲットによって作成されたランタイム JAR のリストを返します。
source_jars
sequence JavaInfo.source_jarsターゲット自体のすべてのソースファイル(アノテーションによって生成されたファイルを含む)を含む JAR のリストを返します。つまり、推移的依存関係のソースは含みません。
to_json
string JavaInfo.to_json()この権限のサポートは終了しており、この API は非推奨で、まもなく削除されます。頼りにしないでください。これは
---incompatible_struct_has_no_methods
で無効になります。このフラグを使用して、近く予定されている削除との互換性があることを確認します。構造体パラメータから JSON 文字列を作成します。このメソッドは、すべての構造体要素が(再帰的に)文字列、整数、ブール値、その他の構造体、これらの型のリスト、またはこれらの型の文字列キーと値を含む辞書である場合にのみ機能します。文字列内の引用符や改行はエスケープされます。例:
struct(key=123).to_json() # {"key":123} struct(key=True).to_json() # {"key":true} struct(key=[1, 2, 3]).to_json() # {"key":[1,2,3]} struct(key='text').to_json() # {"key":"text"} struct(key=struct(inner_key='text')).to_json() # {"key":{"inner_key":"text"}} struct(key=[struct(inner_key=1), struct(inner_key=2)]).to_json() # {"key":[{"inner_key":1},{"inner_key":2}]} struct(key=struct(inner_key=struct(inner_inner_key='text'))).to_json() # {"key":{"inner_key":{"inner_inner_key":"text"}}}。
非推奨: 代わりに json.encode(x) または json.encode_indent(x) を使用してください。これらは構造体以外の値に対して機能し、構造体フィールドの名前空間を汚染しません。
to_proto
string JavaInfo.to_proto()この権限のサポートは終了しており、この API は非推奨で、まもなく削除されます。頼りにしないでください。これは
---incompatible_struct_has_no_methods
で無効になります。このフラグを使用して、近く予定されている削除との互換性があることを確認します。構造体パラメータからテキスト メッセージを作成します。このメソッドは、すべての構造体要素が(再帰的に)なり、文字列、整数、ブール値、その他の構造体、辞書、またはこれらの型のリストである場合にのみ機能します。文字列内の引用符や改行はエスケープされます。構造体キーは並べ替えられた順序で反復されます。例:
struct(key=123).to_proto() # key: 123 struct(key=True).to_proto() # key: true struct(key=[1, 2, 3]).to_proto() # key: 1 # key: 2 # key: 3 struct(key='text').to_proto() # key: "text" struct(key=struct(inner_key='text')).to_proto() # key { # inner_key: "text" # } struct(key=[struct(inner_key=1), struct(inner_key=2)]).to_proto() # key { # inner_key: 1 # } # key { # inner_key: 2 # } struct(key=struct(inner_key=struct(inner_inner_key='text'))).to_proto() # key { # inner_key { # inner_inner_key: "text" # } # } struct(foo={4: 3, 2: 1}).to_proto() # foo: { # key: 4 # value: 3 # } # foo: { # key: 2 # value: 1 # }
非推奨: 代わりに proto.encode_text(x) を使用してください。
transitive_compile_time_jars
depset JavaInfo.transitive_compile_time_jarsターゲットのビルドに必要な JAR の推移的なセットを返します。
transitive_deps
depset JavaInfo.transitive_deps非推奨: 代わりに
JavaInfo.transitive_compile_time_jars
を使用してください。同じ値を返します。transitive_native_libraries
depset JavaInfo.transitive_native_librariesターゲットが必要とする CC ネイティブ ライブラリの推移的なセットを返します。
transitive_runtime_deps
depset JavaInfo.transitive_runtime_deps非推奨: 代わりに
JavaInfo.transitive_runtime_jars
を使用してください。同じ値を返します。
transitive_runtime_jars
depset JavaInfo.transitive_runtime_jarsターゲットのランタイム クラスパスで必要な JAR の推移的セットを返します。
transitive_source_jars
depset JavaInfo.transitive_source_jars現在のターゲットとそのすべての推移的依存関係のソースファイルを含む JAR を返します。