java_common

Sorun bildirin Kaynağı göster

Starlark'ta Java derleme desteği için yardımcı programlar.

Üyeler

BootClassPathInfo

Provider java_common.BootClassPathInfo

Bootclasspath bilgilerini sağlamak için kullanılan sağlayıcı

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=[])

Bir Starlark kuralının uygulamasından Java kaynak dosyalarını/jar'larını derler, derlemenin sonuçlarını temsil eden bir sağlayıcı döndürür ve bu kuralın yayınladığı sağlayıcı grubuna eklenebilir.

Parametreler

Parametre Açıklama
ctx gerekli
Kural bağlamı.
source_jars Files sequence; varsayılan olarak []
Derlenecek jar'ların listesi. source_jars veya source_files öğelerinden en az biri belirtilmelidir.
source_files Dosya sekanası; varsayılan değer []'dir
Derlenecek Java kaynak dosyalarının listesi. source_jars veya source_files öğelerinden en az biri belirtilmelidir.
output zorunlu
output_source_jar File (Dosya) veya None; varsayılan değer None'dir
Çıkış kaynağı jar. İsteğe bağlı. Ayarlanmazsa varsayılan olarak "{output_jar}-src.jar" olur.
javac_opts string sequence; varsayılan olarak []
İstenen javac seçeneklerinin listesi. İsteğe bağlı.
deps struct'ların sequence; varsayılan değeri []
Bağımlılık listesidir. İsteğe bağlı.
runtime_deps struct'ların sequence; varsayılan değeri []
Çalışma zamanı bağımlılıklarının listesi. İsteğe bağlı.
exports struct'ın sequence; varsayılan olarak []
Dışa aktarma listesidir. İsteğe bağlı.
plugins struct'ların sequence veya struct'ların dizisi; varsayılan olarak []
Eklentiler listesi. İsteğe bağlı.
exported_plugins struct'ların sequence veya struct'ların dizisi; varsayılan olarak []
Dışa aktarılan eklentilerin listesi. İsteğe bağlı.
native_libraries CcInfo dizisi; varsayılan olarak []
bu kitaplık için gereken CC yerel kitaplık bağımlılıklarıdır.
annotation_processor_additional_inputs Dosya sekanası; varsayılan değer [] şeklindedir
Ek açıklama işleme için Java kaynaklarına ek olarak Java derleme işleminin alacağı girişlerin listesi.
annotation_processor_additional_outputs Dosya sekanası; varsayılan değer []'dir
Ek açıklama işlemedeki sınıf jar dosyasına ek olarak Java derleme işleminin çıkaracağı çıkışların listesidir.
strict_deps varsayılan değer: 'ERROR'
Katı yapılandırmaların nasıl ele alınacağını belirten bir dize. Olası değerler: "OFF", "ERROR", "WARN" ve "DEFAULT". Daha fazla ayrıntı için /docs/user-manual#flag--strict_java_deps adresine bakın. Varsayılan olarak "ERROR".
java_toolchain gerekli
Bu derleme için kullanılacak bir JavaToolchainInfo. Zorunlu.
bootclasspath varsayılan değer: None
Bu derleme için kullanılacak bir BootClassPathInfo. Mevcut olduğunda, sağlanan java_toolchain ile ilişkili bootclasspath geçersiz kılınır. İsteğe bağlı.
host_javabase varsayılan değer: None
Kullanımdan kaldırıldı. Bu parametre artık kullanılmamaktadır ve yakında kaldırılacaktır. Lütfen bu özelliğe güvenmeyin. --+incompatible_java_common_parameters ile devre dışı bırakılır. Kodunuzun, hemen kaldırılmak üzere uygun olduğunu doğrulamak için bu işareti kullanın.
Kullanımdan kaldırıldı: Bu parametreyi bırakabilirsiniz (host_javabase, java_toolchain ile sağlanır)
sourcepath Dosya dizisi; varsayılan değer []
resources Dosya dizisi; varsayılan değer []
resource_jars Dosya dizisi; varsayılan değer []
classpath_resources Dosya dizisi; varsayılan değer []
varsayılan değer: False
enable_annotation_processing varsayılan değer: True
Bu derlemede ek açıklama işlemeyi devre dışı bırakarak eklentilerde veya disiplinlerin distribütörlerinde sağlanan ek açıklama işlemcilerinin yoksayılmasına neden olur.
enable_compile_jar_action varsayılan değer: True
Başlık derlemeyi veya ijar oluşturmayı etkinleştirir. Yanlış değerine ayarlanırsa bağımlıların derleme sınıf yollarında tam sınıf jar dosyasının kullanılmasını zorunlu kılar. Bu, bağımlı olmayan ikili programlar gibi kitaplık dışı hedeflerin kullanılması için tasarlanmıştır.
add_exports dize sequence; varsayılan olarak [] şeklindedir
Bu kitaplığın verilen /değerine erişmesine izin ver. İsteğe bağlıdır.
add_opens dize sequence; varsayılan olarak [] şeklindedir
Bu kitaplığın belirtilen /değerine yansıtıcı olarak erişmesine izin ver. İsteğe bağlıdır.

JavaRuntimeInfo

Provider java_common.JavaRuntimeInfo

Kullanılan Java çalışma zamanıyla ilgili bilgileri içeren sağlayıcıyı almak için kullanılan anahtar.

JavaToolchainInfo

Provider java_common.JavaToolchainInfo

Kullanılan Java araç zinciriyle ilgili bilgileri içeren sağlayıcıyı almak için kullanılan anahtar.

birleştirmek

struct java_common.merge(providers)

Belirtilen sağlayıcıları tek bir JavaInfo'da birleştirir.

Parametreler

Parametre Açıklama
providers struct'ların sequence; gerekli
Birleştirilecek sağlayıcıların listesi.

pack_sources

File java_common.pack_sources(actions, *, output_jar=None, output_source_jar=None, sources=[], source_jars=[], java_toolchain, host_javabase=None)

Kaynakları ve kaynak jar'ları tek bir kaynak jar dosyasında toplar. Döndürülen değer genellikle

JavaInfo#source_jar

.Çıkış_jar veya çıktı_kaynak_jar parametrelerinden en az biri gereklidir.

Parametreler

Parametre Açıklama
actions gerekli
ctx.actions
output_jar Dosya veya None; varsayılan değer: None
Kullanımdan kaldırıldı. Bu parametre artık kullanılmamaktadır ve yakında kaldırılacaktır. Lütfen bu özelliğe güvenmeyin. --+incompatible_java_common_parameters ile devre dışı bırakılır. Kodunuzun, hemen kaldırılmak üzere uygun olduğunu doğrulamak için bu işareti kullanın.
Kullanımdan kaldırıldı: Kuralın çıkış bölümü. Ortaya çıkan kaynak jar dosyasını adlandırmak için kullanılır. Parametre, exit_source_jar parametresini "{output_jar}-src.jar" olarak ayarlıyor.Bunun yerine doğrudan exit_source_jar parametresini kullanın.
output_source_jar File (Dosya) veya None; varsayılan değer None'dir
Çıkış kaynağı jar.
sources Dosya sekanası; varsayılan değer []'dir
Kaynak jar dosyasına paketlenecek Java kaynak dosyalarının listesi.
source_jars Files sequence; varsayılan olarak [] şeklindedir
Kaynak jar'a paketlenecek kaynak jar dosyaları listesi.
java_toolchain gerekli
ijar aracını bulmak için kullanılacak bir JavaToolchainInfo.
host_javabase varsayılan değer: None
Kullanımdan kaldırıldı. Bu parametre artık kullanılmamaktadır ve yakında kaldırılacaktır. Lütfen bu özelliğe güvenmeyin. --+incompatible_java_common_parameters ile devre dışı bırakılır. Kodunuzun, hemen kaldırılmak üzere uygun olduğunu doğrulamak için bu işareti kullanın.
Kullanımdan kaldırıldı: Bu parametreyi bırakabilirsiniz (host_javabase, java_toolchain ile sağlanır)

run_ijar

File java_common.run_ijar(actions, *, jar, target_label=None, java_toolchain)

Kavanozda ijar çalıştırır ve yöntem gövdelerinden çıkarır. Bu, yöntem uygulamalarında yalnızca basit değişiklikler içeren yeniden derlemeler sırasında bağımlı jar'ların yeniden oluşturulmasını azaltmaya yardımcı olur. Döndürülen değer genellikle JavaInfo#compile_jar öğesine iletilir.

Parametreler

Parametre Açıklama
actions gerekli
ctx.actions
jar gerekli
ijar'ın çalıştırılacağı jar dosyası.
target_label Etiket veya None; varsayılan değer None'dir
Kavanozu damgalamak için kullanılacak hedef etiket. add_dep desteği için kullanılır. Genellikle, kavanozu mevcut kuralın etiketiyle damgalamak için ctx.label değerini geçirirsiniz.
java_toolchain gerekli
ijar aracını bulmak için kullanılacak bir JavaToolchainInfo.

stamp_jar

File java_common.stamp_jar(actions, *, jar, target_label, java_toolchain)

Kavanozu add_dep desteği için hedef etiketiyle damgalar. Döndürülen değer genellikle JavaInfo#compile_jar öğesine iletilir. Mümkün olduğunda run_ijar kullanmayı tercih edin.

Parametreler

Parametre Açıklama
actions gerekli
ctx.actions
jar gerekli
stamp_jar'ın çalıştırılacağı jar dosyası.
target_label gerekli
Kavanozu damgalamak için kullanılacak hedef etiket. add_dep desteği için kullanılır. Genellikle, kavanozu mevcut kuralın etiketiyle damgalamak için ctx.label değerini geçirirsiniz.
java_toolchain gerekli
stamp_jar aracını bulmak için kullanılacak bir JavaToolchainInfo.