Java_common

Informar um problema Mostrar fonte Noite · 7,3 · 7,2 · 7,1 · 7,0 · 6,5

Utilitários para suporte à compilação Java no Starlark.

Membros

BootClassPathInfo

Provider java_common.BootClassPathInfo

O provedor usado para fornecer informações do bootclasspath

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

Compila arquivos/jars de origem Java a partir da implementação de uma regra Starlark e retorna um provedor que representa os resultados da compilação e pode ser adicionado ao conjunto de provedores emitidos por essa regra.

Parâmetros

Parâmetro Descrição
ctx obrigatório
O contexto da regra.
source_jars Sequência de Files; o padrão é []
Uma lista dos jars que serão compilados. Pelo menos um source_jars ou source_files precisa ser especificado.
source_files Sequência de Files; o padrão é []
Uma lista dos arquivos de origem Java a serem compilados. Pelo menos um source_jars ou source_files precisa ser especificado.
output obrigatório
output_source_jar Arquivo ou None o padrão é None
O jar de origem de saída. Opcional. Se não definido, o padrão será "{output_jar}-src.jar".
javac_opts sequência de strings o padrão é []
Uma lista das opções javac desejadas. Opcional.
deps sequência de structs o padrão é []
Uma lista de dependências. Opcional.
runtime_deps sequência de structs o padrão é []
Uma lista de dependências de ambiente de execução. Opcional.
exports sequência de structs o padrão é []
Uma lista de exportações. Opcional.
plugins sequência de structs ou sequência de structs; o padrão é []
Uma lista de plug-ins. Opcional.
exported_plugins sequência de structs ou sequência de structs; o padrão é []
Uma lista de plug-ins exportados. Opcional.
native_libraries sequência de CcInfos; o padrão é []
CC para as dependências da biblioteca nativa necessárias para essa biblioteca.
annotation_processor_additional_inputs Sequência de Files; o padrão é []
Uma lista de entradas que a ação de compilação Java receberá, além das fontes Java para processamento de anotações.
annotation_processor_additional_outputs Sequência de Files; o padrão é []
Uma lista de saídas que a ação de compilação Java produzirá, além do jar de classe do processamento de anotações.
strict_deps o padrão é 'ERROR'
Uma string que especifica como lidar com dependências estritas. Valores possíveis: 'OFF', 'ERROR', 'WARN' e "DEFAULT". Para mais detalhes, consulte /docs/user-manual#flag--strict_java_deps. Por padrão, 'ERROR'.
java_toolchain obrigatório
Um JavaToolchainInfo a ser usado para esta compilação. Obrigatório.
bootclasspath o padrão é None
Um BootClassPathInfo a ser usado para essa compilação. Se presente, substitui o bootclasspath associado ao java_datasets fornecido. Opcional.
host_javabase o padrão é None
Descontinuado. Esse parâmetro está obsoleto e será removido em breve. Não dependa disso. Ele está desativado com --+incompatible_java_common_parameters. Use essa sinalização para verificar se seu código é compatível com a remoção iminente.
Descontinuado: você pode descartar este parâmetro (host_javabase é fornecido com java_Dataset)
sourcepath Sequência de Files; o padrão é []
resources Sequência de Files; o padrão é []
resource_jars Sequência de Files; o padrão é []
classpath_resources Sequência de Files; o padrão é []
o padrão é False
enable_annotation_processing o padrão é True
Desativa o processamento de anotações nessa compilação, fazendo com que todos os processadores de anotações fornecidos em plug-ins ou em export_plugins de dependências sejam ignorados.
enable_compile_jar_action o padrão é True
Ativa a compilação de cabeçalho ou a criação de ijar. Se definida como falsa, ela força o uso do jar de classe completo nos caminhos de classe de compilação de todos os dependentes. Isso é destinado ao uso por destinos que não são bibliotecas, como binários que não têm dependentes.
add_exports sequência de strings o padrão é []
Permite que a biblioteca acesse o /especificado. Opcional.
add_opens sequência de strings o padrão é []
Permite que a biblioteca acesse de forma refletida o /fornecido. Opcional.

JavaRuntimeInfo

Provider java_common.JavaRuntimeInfo

A chave usada para recuperar o provedor que contém informações sobre o ambiente de execução do Java que está sendo usado.

JavaToolchainInfo

Provider java_common.JavaToolchainInfo

A chave usada para recuperar o provedor que contém informações sobre o conjunto de ferramentas Java que está sendo usado.

merge

struct java_common.merge(providers)

Mescla os provedores fornecidos em um único JavaInfo.

Parâmetros

Parâmetro Descrição
providers sequência de structs obrigatório
A lista de provedores a serem mesclados.

pack_sources

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

Empacota fontes e jars de origem em um único arquivo jar de origem. O valor de retorno normalmente é passado para

JavaInfo#source_jar

.Pelo menos um dos parâmetros output_jar ou output_source_jar é obrigatório.

Parâmetros

Parâmetro Descrição
actions obrigatório
ctx.actions
output_jar Arquivo ou None o padrão é None
Descontinuado. Esse parâmetro está obsoleto e será removido em breve. Não dependa disso. Ele está desativado com --+incompatible_java_common_parameters. Use essa sinalização para verificar se seu código é compatível com a remoção iminente.
Descontinuado: o jar de saída da regra. Usado para nomear o jar de origem resultante. O parâmetro define o parâmetro output_source_jar como "{output_jar}-src.jar". Use o parâmetro output_source_jar diretamente.
output_source_jar Arquivo ou None o padrão é None
O jar de origem de saída.
sources Sequência de Files; o padrão é []
Uma lista de arquivos de origem Java a serem compactados no jar de origem.
source_jars Sequência de Files; o padrão é []
Uma lista de jars de origem a serem empacotados no jar de origem.
java_toolchain obrigatório
Uma JavaToolchainInfo a ser usada para encontrar a ferramenta ijar.
host_javabase o padrão é None
Descontinuado. Esse parâmetro está obsoleto e será removido em breve. Não dependa disso. Ele está desativado com --+incompatible_java_common_parameters. Use essa sinalização para verificar se seu código é compatível com a remoção iminente.
Descontinuado: você pode descartar este parâmetro (host_javabase é fornecido com java_Dataset)

run_ijar

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

Executa o ijar em um jar, removendo-o dos corpos do método. Isso ajuda a reduzir a recriação de jars dependentes durante as recompilações que consistem apenas em alterações simples nas implementações do método. O valor de retorno normalmente é transmitido para JavaInfo#compile_jar.

Parâmetros

Parâmetro Descrição
actions obrigatório
ctx.actions
jar obrigatório
O jar em que o ijar será executado.
target_label Rótulo ou None o padrão é None
Um rótulo de destino para carimbar o pote. Usado para suporte a add_dep. Normalmente, você transmitiria ctx.label para incluir o rótulo da regra atual no jar.
java_toolchain obrigatório
Uma JavaToolchainInfo a ser usada para encontrar a ferramenta ijar.

stamp_jar

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

Carimba um jar com um rótulo de destino para compatibilidade com add_dep. O valor de retorno normalmente é transmitido para JavaInfo#compile_jar. Use run_ijar quando possível.

Parâmetros

Parâmetro Descrição
actions obrigatório
ctx.actions
jar obrigatório
O jar em que o stamp_jar será executado.
target_label obrigatório
Um rótulo de destino para carimbar o pote. Usado para suporte a add_dep. Normalmente, você transmitiria ctx.label para incluir o rótulo da regra atual no jar.
java_toolchain obrigatório
Um JavaToolchainInfo usado para encontrar a ferramenta stamp_jar.