メンバー
- 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、
デフォルト = None出力 jar の作成に使用されたソース JAR。 pack_sources を使用して、このソース JAR を生成します。
|
compile_jdeps
|
File; or None、
デフォルト = NoneJavaCompileAction によって使用されるコンパイル時依存関係に関する jdeps 情報。これは、Bazel に含まれる deps.proto protobuf を使用してエンコードされたバイナリ proto です。利用可能な場合、このファイルは通常、ヘッダー コンパイラによって生成されます。 |
generated_class_jar
|
File; or None、
デフォルト = Noneアノテーション処理中に生成されたソースからコンパイルされたクラスファイルを含む jar ファイル。 |
generated_source_jar
|
File; or None、
デフォルト = Noneアノテーション処理の結果として作成されたソース JAR。 |
native_headers_jar
|
File; or None、
デフォルト = Noneネイティブ メソッドの実装をサポートする CC ヘッダー ファイルを含む jar(通常は javac -h の出力)。 |
manifest_proto
|
File; or None、
デフォルト = Noneルール出力のマニフェスト情報(利用可能な場合)。これは、Bazel に含まれる manifest.proto protobuf を使用してエンコードされたバイナリ proto です。IDE やその他のツールでこの情報を使用して、処理を効率化できます。 |
neverlink
|
デフォルト = False true の場合、このライブラリは実行時に使用せず、コンパイルにのみ使用します。 |
deps
|
sequence of JavaInfos、
デフォルト = []出力 jar の作成に使用されたコンパイル時依存関係。 |
runtime_deps
|
sequence of JavaInfos、
デフォルト = []このライブラリに必要なランタイム依存関係。 |
exports
|
sequence of JavaInfos、
デフォルト = []このライブラリのユーザーが利用できるようにするライブラリ。java_library.exports もご覧ください。 |
exported_plugins
|
sequence of JavaPluginInfos、
デフォルト = []エクスポートされたプラグインのリスト。省略可。 |
jdeps
|
File; or None、
デフォルト = Noneルール出力の jdeps 情報(利用可能な場合)。これは、Bazel に含まれる deps.proto protobuf を使用してエンコードされたバイナリ proto です。利用可能な場合、このファイルは通常、コンパイラによって生成されます。IDE やその他のツールでこの情報を使用して、処理を効率化できます。 |
native_libraries
|
sequence of CcInfos、
デフォルト = []このライブラリに必要なネイティブ ライブラリ依存関係を CC に含めます。 |
annotation_processing
java_annotation_processing JavaInfo.annotation_processing
非推奨: 代わりに plugins を使用してください(ターゲットを使用することで適用されるアノテーション プロセッサに関する情報が返されます)。
None を返すことができます。
api_generating_plugins
JavaPluginData JavaInfo.api_generating_plugins
これらのアノテーション プロセッサは、ヘッダー JAR(メソッド シグネチャを含む)を生成する前に Java ターゲットに適用されます。API プラグインが存在しない場合は、ソースからヘッダー JAR が生成され、クリティカル パスが減少します。
api_generating_plugins は plugins のサブセットです。
compilation_info
java_compilation_info JavaInfo.compilation_info
None を返すことができます。
compile_jars
depset JavaInfo.compile_jars
full_compile_jars
depset JavaInfo.full_compile_jars
- </ph>
-
JavaInfo.compile_jarsによって返されたインターフェース Jars の、対応する通常の JAR -
JavaInfo.compile_jarsから返される通常の(完全な)Jar
注: JavaInfo.compile_jars は、インターフェース Jars と通常の Jars を組み合わせて返すことができます。
インターフェース Jars がルールセット(一部の Scala ターゲットなど)で動作しない場合にのみ、このメソッドを使用してください。Java のみのターゲットを操作する場合は、JavaInfo.compile_jars を介してインターフェース Jars を使用することをおすすめします。
java_outputs
list JavaInfo.java_outputs
module_flags_info
JavaModuleFlagsProvider JavaInfo.module_flags_info
結果
java_output_jars JavaInfo.outputs
None を返すことができます。
plugins
JavaPluginData JavaInfo.plugins
これは通常、java_plugin 自体、または 1 つ以上のプラグインをエクスポートする java_library です。
java_library は、このフィールドのすべてのプラグインが deps 属性と plugins 属性に表示される状態でアノテーション処理を実行します。
runtime_output_jars
sequence JavaInfo.runtime_output_jars
source_jars
sequence JavaInfo.source_jars
to_json
string JavaInfo.to_json()
---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()
---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
transitive_deps
depset JavaInfo.transitive_deps
JavaInfo.transitive_compile_time_jars を使用してください。同じ値が返されます。
transitive_native_libraries
depset JavaInfo.transitive_native_libraries
transitive_runtime_deps
depset JavaInfo.transitive_runtime_deps
JavaInfo.transitive_runtime_jars を使用してください。同じ値が返されます。
transitive_runtime_jars
depset JavaInfo.transitive_runtime_jars
transitive_source_jars
depset JavaInfo.transitive_source_jars