java_common

7.3 · 7.2 · 7.1 · 7.0 · 6.5

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

Üyeler

BootClassPathInfo

Provider java_common.BootClassPathInfo

Açılış sınıf yolu 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 uygulanmasından Java kaynak dosyaları/jar'ları derler, derlemenin sonuçlarını temsil eden ve bu kuralın yayınladığı sağlayıcı grubuna eklenebilecek bir sağlayıcı döndürür.

Parametreler

Parametre Açıklama
ctx required
Kural bağlamı.
source_jars sequence of Files (Dosyalar); varsayılan olarak []
Derlenecek jar'ların listesidir. source_jars veya source_files özelliklerinden en az biri belirtilmelidir.
source_files Dosya dizisi; varsayılan değer []
Derlenecek Java kaynak dosyalarının listesi. source_jars veya source_files özelliklerinden en az biri belirtilmelidir.
output zorunlu
output_source_jar File veya None; varsayılan olarak None değeridir
Çıkış kaynağı jar. İsteğe bağlı. Ayarlanmamışsa varsayılan olarak "{output_jar}-src.jar" değerine ayarlanır.
javac_opts Dize dizisi; varsayılan değer []
İstenilen javac seçeneklerinin listesi. İsteğe bağlı.
deps struct'ların sequence'ı; varsayılan []
Bağımlılık listesidir. İsteğe bağlı.
runtime_deps struct'ların sequence'ı; varsayılan olarak []
Çalışma zamanı bağımlılıklarının listesidir. İsteğe bağlı.
exports struct'ın sequence'ı; varsayılan []
Dışa aktarma listesidir. İsteğe bağlı.
plugins struct dizisi veya struct dizisi; varsayılan değer []
Eklentilerin listesi. İsteğe bağlı.
exported_plugins struct dizisi veya struct dizisi; varsayılan değer []
Dışa aktarılan eklentilerin listesi. İsteğe bağlı.
native_libraries CcInfo dizisi; varsayılan değer []
CC yerel kitaplık bağımlılıkları bu kitaplık için gereklidir.
annotation_processor_additional_inputs Dosya dizisi; varsayılan değer []
Not ekleme işlemi için Java kaynaklarının yanı sıra Java derleme işleminin alacağı girişlerin listesi.
annotation_processor_additional_outputs Dosya'nın sequence; varsayılan olarak []
Ek açıklama işlemede sınıf jar'a ek olarak Java derleme işleminin çıkaracağı çıkışların listesi.
strict_deps varsayılan 'ERROR' şeklindedir
Katı kısıtlamaların nasıl işleneceğini belirten bir dize. Olası değerler: 'OFF', 'ERROR', 'WARN' ve 'DEFAULT'. Daha fazla bilgi için /docs/user-manual#flag--strict_java_deps adresine bakın. Varsayılan olarak 'ERROR'.
java_toolchain required
Bu derleme için kullanılacak JavaToolchainInfo. Zorunludur.
bootclasspath varsayılan değer None
Bu derleme için kullanılacak BootClassPathInfo. Mevcut olduğunda, sağlanan java_toolchain ile ilişkili bootclasspath değerini geçersiz kılar. İsteğe bağlı.
host_javabase varsayılan None şeklindedir
Kullanımdan kaldırıldı. Bu parametrenin desteği sonlandırıldı ve yakında kaldırılacak. Lütfen bu yönteme güvenmeyin. --+incompatible_java_common_parameters ile devre dışı bırakılır. Kodunuzun, kaldırılma olasılığı yüksek olan içerikle uyumlu 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 Dosyaların sequence; varsayılan []
resources Dosyaların sequence; varsayılan []
resource_jars Dosyaların sequence; varsayılan []
classpath_resources Dosya dizisi; varsayılan değer []
Varsayılan değer False
'tır.
enable_annotation_processing varsayılan değer True
Bu derlemede ek açıklama işlemeyi devre dışı bırakır. Bu durumda, plugins veya deps'in exported_plugins bölümünde sağlanan tüm ek açıklama işleyicileri yoksayılır.
enable_compile_jar_action varsayılan değer True
Başlık derlemeyi veya ijar oluşturmayı etkinleştirir. Yanlış olarak ayarlanırsa tüm sınıf jar'ının, bağımlıların derleme sınıf yollarında kullanılmasını zorunlu kılar. Bu, bağımlılığı olmayan ikili dosyalar gibi kitaplık dışı hedefler tarafından kullanılmak üzere tasarlanmıştır.
add_exports dizelerin sequence'ı; varsayılan olarak []
Bu kitaplığın belirtilen /öğesine erişmesine izin ver. İsteğe bağlı.
add_opens Dize dizisi; varsayılan değer []
Bu kitaplığın, belirtilen / öğesine yansıtmalı olarak erişmesine izin verin. İsteğe bağlı.

JavaRuntimeInfo

Provider java_common.JavaRuntimeInfo

Kullanılan Java çalışma zamanı hakkında bilgi içeren sağlayıcıyı almak için kullanılan anahtar.

JavaToolchainInfo

Provider java_common.JavaToolchainInfo

Kullanılan Java araç zinciri hakkında bilgi 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 sequence of structs; required
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 dosyalarını tek bir kaynak jar dosyasında paketler. Döndürülen değer genellikle

JavaInfo#source_jar

Çıkış_jar veya exit_source_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 parametrenin desteği sonlandırılmıştır ve yakında kaldırılacaktır. Lütfen bu metrikten yararlanmayın. --+incompatible_java_common_parameters ile devre dışı bırakılır. Kodunuzun yakında kaldırılacak olan işlevlerle uyumlu olup olmadığını doğrulamak için bu işareti kullanın.
Kullanımdan kaldırıldı: Kuralın çıkış jar'ı. Elde edilen kaynak jar dosyasını adlandırmak için kullanılır. Parametre, output_source_jar parametresini "{output_jar}-src.jar" olarak ayarlar. Bunun yerine doğrudan output_source_jar parametresini kullanın.
output_source_jar Dosya veya None; varsayılan değer None
Çıkış kaynak jar dosyasıdır.
sources Dosya öğesinin sequence değeri; varsayılan []
şeklindedir Kaynak jar'a paketlenecek Java kaynak dosyalarının listesi.
source_jars Dosya öğesinin sequence; varsayılan olarak []
Kaynak jar'a paketlenecek kaynak jar'ların listesidir.
java_toolchain gerekli
ijar aracını bulmak için kullanılacak JavaToolchainInfo.
host_javabase varsayılan None şeklindedir
Kullanımdan kaldırıldı. Bu parametrenin desteği sonlandırılmıştır ve yakında kaldırılacaktır. Lütfen bu yönteme güvenmeyin. --+incompatible_java_common_parameters ile devre dışı bırakıldı. Kodunuzun, kaldırılma olasılığı yüksek olan içerikle uyumlu 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)

Bir kavanozun üzerinde ijar'ı çalıştırarak yöntem gövdelerini çıkarır. Bu, yalnızca yöntem uygulamalarında basit değişikliklerden oluşan yeniden derleme işlemleri sırasında bağımlı jar'ların yeniden oluşturulmasının azaltılmasına yardımcı olur. Döndürülen değer genellikle JavaInfo#compile_jar parametresine iletilir.

Parametreler

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

stamp_jar

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

add_dep desteği için bir kavanoza hedef etiket ekler. Döndürülen değer genellikle JavaInfo#compile_jar parametresine iletilir. Mümkün olduğunda run_ijar kullanmayı tercih edin.

Parametreler

Parametre Açıklama
actions required
ctx.actions
jar required
stamp_jar'ın çalışacağı jar.
target_label gerekli
Kavanozun damgalanması için bir hedef etiket. add_dep desteği için kullanılır. Genellikle, kavanozu mevcut kuralın etiketiyle damgalamak için ctx.label değerini iletirsiniz.
java_toolchain zorunlu
stamp_jar aracını bulmak için kullanılan bir JavaToolchainInfo.