Anggota
- JavaInfo
- annotation_processing
- api_generating_plugins
- compilation_info
- compile_jars
- full_compile_jars
- java_outputs
- module_flags_info
- output
- plugin
- 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=[])Konstruktor
JavaInfo
.
Parameter
Parameter | Deskripsi |
---|---|
output_jar
|
wajib Toples yang dibuat sebagai hasil kompilasi (misalnya, javac, scalac, dll). |
compile_jar
|
File; or None ;
wajibJar yang ditambahkan sebagai dependensi waktu kompilasi sebagai pengganti output_jar . Biasanya ini adalah ijar yang dihasilkan oleh run_ijar . Jika Anda tidak dapat menggunakan ijar, pertimbangkan untuk menggunakan output stamp_ijar . Jika tidak ingin menggunakannya, Anda cukup meneruskan output_jar . Ada beberapa kasus khusus ketika parameter ini dapat ditetapkan ke None , misalnya menambahkan stoples dengan resource atau saat digunakan dalam aturan terminal seperti java_binary .
|
source_jar
|
File; or None ;
default = Tidak adaJar sumber yang digunakan untuk membuat jar output. Gunakan pack_sources untuk membuat jar sumber ini.
|
compile_jdeps
|
File; or None ;
default = Tidak adaInformasi jdeps tentang dependensi waktu kompilasi yang akan digunakan oleh JavaCompileAction. Protokol ini harus berupa proto biner yang dienkode menggunakan protobuf deps.proto yang disertakan dengan Bazel. Jika tersedia, file ini biasanya dihasilkan oleh compiler header. |
generated_class_jar
|
File; or None ;
default = Tidak adaFile jar yang berisi file class yang dikompilasi dari sumber yang dihasilkan selama pemrosesan anotasi. |
generated_source_jar
|
File; or None ;
default = Tidak adaJar sumber yang dibuat sebagai hasil pemrosesan anotasi. |
native_headers_jar
|
File; or None ;
default = Tidak adaJar yang berisi file header CC yang mendukung implementasi metode native (biasanya output javac -h). |
manifest_proto
|
File; or None ;
default = Tidak adaInformasi manifes untuk output aturan (jika tersedia). Solusi ini harus berupa proto biner yang dienkode menggunakan protobuf manifest.proto yang disertakan dengan Bazel. IDE dan alat lainnya dapat menggunakan informasi ini untuk pemrosesan yang lebih efisien. |
neverlink
|
default = Salah Jika true (benar), hanya gunakan library ini untuk kompilasi, bukan saat runtime. |
deps
|
sequence of JavaInfos ;
default = []Mengompilasi dependensi waktu yang digunakan untuk membuat jar output. |
runtime_deps
|
sequence of JavaInfos ;
default = []Dependensi runtime yang diperlukan untuk library ini. |
exports
|
sequence of JavaInfos ;
default = []Library yang akan disediakan bagi pengguna library ini. Lihat juga java_library.exports. |
exported_plugins
|
sequence of JavaPluginInfos ;
default = []Daftar plugin yang diekspor. Opsional. |
jdeps
|
File; or None ;
default = Tidak adainformasi jdeps untuk output aturan (jika tersedia). Protokol ini harus berupa proto biner yang dienkode menggunakan protobuf deps.proto yang disertakan dengan Bazel. Jika tersedia, file ini biasanya dihasilkan oleh compiler. IDE dan alat lainnya dapat menggunakan informasi ini untuk pemrosesan yang lebih efisien. |
native_libraries
|
sequence of CcInfos ;
default = []Dependensi library native CC yang diperlukan untuk library ini. |
annotation_processing
java_annotation_processing JavaInfo.annotation_processingMenampilkan informasi tentang pemroses anotasi yang diterapkan pada target seperti Java/Java ini.
Tidak digunakan lagi: Sebagai gantinya, gunakan plugins
(yang menampilkan informasi tentang pemroses anotasi yang akan diterapkan oleh menggunakan target).
Mungkin menampilkan None
.
api_generating_plugins
JavaPluginData JavaInfo.api_generating_pluginsMenampilkan data tentang API yang menghasilkan plugin yang ditentukan atau diekspor oleh target ini.
Pemroses anotasi tersebut diterapkan ke target Java sebelum menghasilkan jar header-nya (yang berisi tanda tangan metode). Jika tidak ada plugin API, header jar akan dibuat dari sumber, sehingga mengurangi jalur penting.
api_generating_plugins
adalah subset dari plugins
.
compilation_info
java_compilation_info JavaInfo.compilation_infoMenampilkan informasi kompilasi untuk target seperti Java/Java ini. Mungkin menampilkan
None
.
compile_jars
depset JavaInfo.compile_jarsMenampilkan Jar yang diperlukan oleh target ini secara langsung pada waktu kompilasi. Dapat berupa jar antarmuka (ijar atau hjar), jar biasa, atau keduanya, tergantung apakah implementasi aturan memilih untuk membuat jar antarmuka atau tidak.
full_compile_jars
depset JavaInfo.full_compile_jarsMenampilkan Jar waktu kompilasi lengkap dan reguler yang diperlukan oleh target ini secara langsung. Dapat berupa
- Jar reguler yang sesuai dari Jar antarmuka yang ditampilkan oleh
JavaInfo.compile_jars
- Jar biasa (penuh) yang ditampilkan oleh
JavaInfo.compile_jars
Catatan: JavaInfo.compile_jars
dapat menampilkan campuran Jar antarmuka dan Jar biasa.
Hanya gunakan metode ini jika Jar antarmuka tidak berfungsi dengan kumpulan aturan Anda (mis.beberapa target Scala). Jika Anda bekerja dengan target khusus Java, sebaiknya gunakan Jars antarmuka melalui JavaInfo.compile_jars
java_outputs
list JavaInfo.java_outputsMenampilkan informasi tentang output target yang mirip Java/Java ini.
module_flags_info
JavaModuleFlagsProvider JavaInfo.module_flags_infoMenampilkan konfigurasi flag modul Java.
output
java_output_jars JavaInfo.outputsMenampilkan informasi tentang output target yang mirip Java/Java ini. Tidak digunakan lagi: gunakan java_outputs. Mungkin menampilkan
None
.
plugin
JavaPluginData JavaInfo.pluginsMenampilkan data tentang semua plugin yang harus diterapkan oleh target pengguna.
Ini biasanya berupa java_plugin
itu sendiri atau java_library
yang mengekspor satu atau beberapa plugin.
java_library
menjalankan pemrosesan anotasi dengan semua plugin dari kolom ini yang muncul di atribut deps
dan plugins
.
runtime_output_jars
sequence JavaInfo.runtime_output_jarsMenampilkan daftar Jar runtime yang dibuat oleh target mirip Java/Java ini.
source_jars
sequence JavaInfo.source_jarsMenampilkan daftar Jar dengan semua file sumber (termasuk yang dihasilkan oleh anotasi) dari target itu sendiri, yaitu TIDAK termasuk sumber dependensi transitif.
to_json
string JavaInfo.to_json()Tidak digunakan lagi. API ini tidak digunakan lagi dan akan segera dihapus. Harap tidak bergantung padanya. Layanan ini dinonaktifkan dengan
---incompatible_struct_has_no_methods
. Gunakan tanda ini untuk memverifikasi bahwa kode Anda kompatibel dengan penghapusan yang akan segera terjadi. Membuat string JSON dari parameter struct. Metode ini hanya berfungsi jika semua elemen struct (rekursif) adalah string, int, boolean, struct lainnya, daftar jenis ini, atau kamus dengan kunci string dan nilai jenis ini. Tanda kutip dan baris baru dalam string akan di-escape. Contoh:
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"}}}.
Tidak digunakan lagi: sebagai gantinya, gunakan json.encode(x) atau json.encode_indent(x), yang berfungsi untuk nilai selain struct dan tidak mencemari namespace kolom struct.
to_proto
string JavaInfo.to_proto()Tidak digunakan lagi. API ini tidak digunakan lagi dan akan segera dihapus. Harap tidak bergantung padanya. Layanan ini dinonaktifkan dengan
---incompatible_struct_has_no_methods
. Gunakan tanda ini untuk memverifikasi bahwa kode Anda kompatibel dengan penghapusan yang akan segera terjadi. Membuat pesan teks dari parameter struct. Metode ini hanya berfungsi jika semua elemen struct (rekursif) adalah string, int, boolean, struct atau dict lain, atau daftar jenis ini. Tanda kutip dan baris baru dalam string akan di-escape. Kunci struktur diiterasi dalam urutan yang diurutkan. Contoh:
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 # }
Tidak digunakan lagi: sebagai gantinya, gunakan proto.encode_text(x).
transitive_compile_time_jars
depset JavaInfo.transitive_compile_time_jarsMenampilkan kumpulan Jar transitif yang diperlukan untuk membangun target.
transitive_deps
depset JavaInfo.transitive_depsTidak digunakan lagi: Sebagai gantinya, gunakan
JavaInfo.transitive_compile_time_jars
. {i>Function<i} ini menghasilkan nilai yang sama.
transitive_native_libraries
depset JavaInfo.transitive_native_librariesMenampilkan kumpulan transitif library native CC yang diperlukan oleh target.
transitive_runtime_deps
depset JavaInfo.transitive_runtime_depsTidak digunakan lagi: sebagai gantinya, gunakan
JavaInfo.transitive_runtime_jars
. {i>Function<i} ini menghasilkan
nilai yang sama
transitive_runtime_jars
depset JavaInfo.transitive_runtime_jarsMenampilkan kumpulan Jar transitif yang diperlukan pada classpath runtime target.
transitive_source_jars
depset JavaInfo.transitive_source_jarsMenampilkan Jar yang berisi file sumber target saat ini dan semua dependensi transitifnya.