java_common

Sorun bildir Kaynağı göster Nightly · 8.0 7.4 . 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, 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ını/jar dosyalarını derleyip derlemenin sonuçlarını temsil eden ve bu kural tarafından yayınlanan sağlayıcı grubuna eklenebilen bir sağlayıcı döndürür.

Parametreler

Parametre Açıklama
ctx ctx; zorunlu
Kural bağlamı.
source_jars Dosya dizisi; varsayılan değer []
Derlenecek jar dosyalarının listesi. source_jars veya source_files parametrelerinden en az biri belirtilmelidir.
source_files Dosya dizisi; varsayılan değer []
Derlenecek Java kaynak dosyalarının listesi. source_jars veya source_files parametrelerinden en az biri belirtilmelidir.
output Dosya; zorunlu
output_source_jar Dosya veya None; varsayılan değer None
Çıkış kaynak jar dosyası. Ayarlanmamışsa varsayılan değeri `{output_jar}-src.jar` olur.
javac_opts Dize dizisi; varsayılan değer []
İstenilen javac seçeneklerinin listesi.
deps struct dizisi; varsayılan değer []
Bağımlılıkların listesi.
runtime_deps struct dizisi; varsayılan değer []
Çalışma zamanındaki bağımlılıkların listesi.
exports struct dizisi; varsayılan değer []
Dışa aktarılanların listesi.
plugins struct dizisi veya struct dizisi; varsayılan değer []
Eklentilerin listesi.
exported_plugins struct dizisi veya struct dizisi; varsayılan değer []
Dışa aktarılan eklentilerin listesi.
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 dizisi; varsayılan değer []
Java derleme işleminin, ek açıklama işleminden elde edilen sınıf jar dosyasına ek olarak oluşturacağı çıkışların listesi.
strict_deps dize; varsayılan değer 'ERROR'
Katı bağımlıların nasıl ele alınacağını belirten bir dize. Olası değerler: "OFF", "ERROR", "WARN" ve "DEFAULT". Daha fazla bilgi için --strict_java_deps flag. By default 'ERROR'. bölümüne bakın.
java_toolchain Bilgi; zorunlu
Bu derleme için kullanılacak bir JavaToolchainInfo. Zorunlu.
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.
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 []
bool; varsayılan değer False
enable_annotation_processing bool; varsayılan değer True
Bu derlemede ek açıklama işlemeyi devre dışı bırakır. Böylece, 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 bool; 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 Dize dizisi; varsayılan değer []
Bu kitaplığın belirtilen /'a erişmesine izin verin.
add_opens Dize dizisi; varsayılan değer []
Bu kitaplığın, belirtilen /öğesine yansıtmalı olarak erişmesine izin verin.

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ç 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 ile birleştirir.

Parametreler

Parametre Açıklama
providers struct dizisi; zorunlu
Birleştirilecek sağlayıcıların listesi.

pack_sources

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

Kaynakları ve kaynak jar dosyalarını tek bir kaynak jar dosyasına paketler. Döndürülen değer genellikle

JavaInfo#source_jar

.output_jar veya output_source_jar parametrelerinden en az biri gereklidir.

Parametreler

Parametre Açıklama
actions actions; required
ctx.actions
output_source_jar Dosya veya None; varsayılan değer None
Çıkış kaynak jar dosyası.
sources Dosya dizisi; varsayılan değer []
Kaynak jar dosyasına paketlenecek Java kaynak dosyalarının listesi.
source_jars Dosya dizisi; varsayılan değer []
Kaynak jar'a paketlenecek kaynak jar'ların listesi.
java_toolchain Bilgi; zorunlu
ijar aracını bulmak için kullanılan bir JavaToolchainInfo.

run_ijar

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

Bir jar üzerinde ijar'ı çalıştırarak jar'ın yöntem gövdelerini kaldırır. Bu, yalnızca yöntem uygulamalarında yapılan basit değişikliklerden oluşan yeniden derlemeler sırasında bağımlı jar dosyalarının yeniden oluşturulmasını azaltmaya yardımcı olur. Döndürülen değer genellikle JavaInfo#compile_jar parametresine iletilir.

Parametreler

Parametre Açıklama
actions actions; required
ctx.actions
jar File; required
ijar'ın çalışacağı 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 mevcut kuralın etiketiyle damgalamak için ctx.label değerini iletirsiniz.
java_toolchain Bilgi; zorunlu
ijar aracını bulmak için kullanılan bir JavaToolchainInfo.

stamp_jar

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

add_dep desteği için bir kavanoza hedef etiketi damgalıyor. 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 actions; required
ctx.actions
jar File; required
stamp_jar'ın çalışacağı jar.
target_label Etiket; zorunlu
Kavanoza damgalanacak 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 Bilgi; zorunlu
stamp_jar aracını bulmak için kullanılan bir JavaToolchainInfo.