JavaToolInstaller@1 - Tarefa do instalador da ferramenta Java v1
Adquira uma versão específica do Java a partir de um blob do Azure fornecido pelo usuário ou do cache da ferramenta e defina JAVA_HOME.
Sintaxe
# Java tool installer v1
# Acquire a specific version of Java from a user-supplied Azure blob or the tool cache and sets JAVA_HOME.
- task: JavaToolInstaller@1
inputs:
versionSpec: '8' # string. Required. JDK version. Default: 8.
jdkArchitectureOption: # 'x64' | 'x86'. Required. JDK architecture.
jdkSourceOption: # 'AzureStorage' | 'LocalDirectory' | 'PreInstalled'. Required. JDK source.
#jdkFile: # string. Required when jdkSourceOption == LocalDirectory. JDK file.
#azureResourceManagerEndpoint: # string. Required when jdkSourceOption == AzureStorage. Azure subscription.
#azureStorageAccountName: # string. Required when jdkSourceOption == AzureStorage. Storage account name.
#azureContainerName: # string. Required when jdkSourceOption == AzureStorage. Container name.
#azureCommonVirtualFile: # string. Required when jdkSourceOption == AzureStorage. Common virtual path.
#jdkDestinationDirectory: # string. Required when jdkSourceOption != PreInstalled. Destination directory.
#azureResourceGroupName: # string. Optional. Use when jdkSourceOption == AzureStorage. Resource Group name.
#cleanDestinationDirectory: true # boolean. Optional. Use when jdkSourceOption != PreInstalled. Clean destination directory. Default: true.
#createExtractDirectory: true # boolean. Optional. Use when jdkSourceOption != PreInstalled. Create directory for extracting. Default: true.
Insumos
versionSpec
-
versão JDK
string
. Necessário. Valor padrão: 8
.
Especifica a versão do JDK a ser disponibilizada no caminho. Use uma versão de número inteiro, como 10.
jdkArchitectureOption
-
arquitetura JDK
string
. Necessário. Valores permitidos: x64
, x86
.
Especifica a arquitetura (x86
, x64
) do JDK.
jdkSourceOption
-
de origem JDK
string
. Necessário. Valores permitidos: AzureStorage
(Armazenamento do Azure), LocalDirectory
(Diretório Local) PreInstalled
(Pré-instalado).
Especifica a origem do JDK compactado. A origem pode ser o armazenamento de blob do Azure ou um diretório local no agente ou repositório de origem, ou você pode usar a versão pré-instalada do Java (disponível para agentes hospedados pela Microsoft). Veja o exemplo abaixo sobre como usar a versão pré-instalada do Java.
Observação
Esta versão da tarefa acessa o armazenamento do Azure usando uma conexão de serviço do Azure Resource Manager configurada usando a federação de identidade de carga de trabalho e o RBAC do Azure. Para obter mais informações, consulte Atribuir uma função do Azure para acesso a dados de blob.
jdkFile
-
do arquivo JDK
string
. Necessário quando jdkSourceOption == LocalDirectory
.
Especifica o caminho para o arquivo compactado JDK que contém o JDK compactado. O caminho pode estar no repositório de origem ou em um caminho local no agente. O arquivo deve ser um arquivo (.zip, .tar.gz, .7z) contendo a pasta bin no nível raiz ou dentro de um único diretório. O MacOS suporta ficheiros .pkg e .dmg que contenham apenas um ficheiro .pkg no seu interior.
azureResourceManagerEndpoint
-
de assinatura do Azure
string
. Necessário quando jdkSourceOption == AzureStorage
.
Especifica a assinatura do Azure Resource Manager para o JDK.
azureStorageAccountName
-
Nome da conta de armazenamento
string
. Necessário quando jdkSourceOption == AzureStorage
.
Especifica as contas de armazenamento do Azure Classic ou do Resource Manager. Selecione o nome da conta de armazenamento na qual o JDK está localizado.
azureContainerName
-
Nome do contêiner
string
. Necessário quando jdkSourceOption == AzureStorage
.
Especifica o nome do contêiner na conta de armazenamento onde o JDK está localizado.
azureCommonVirtualFile
-
Caminho virtual comum
string
. Necessário quando jdkSourceOption == AzureStorage
.
Especifica o caminho para o JDK dentro do contêiner de armazenamento do Azure.
jdkDestinationDirectory
-
Diretório de destino
string
. Necessário quando jdkSourceOption != PreInstalled
.
Especifica o diretório de destino onde o JDK deve ser extraído. No Linux e no Windows, ele é usado como o diretório de destino para a instalação do JDK. No macOS, esse diretório é usado como uma pasta temporária para extrair .dmg porque o macOS não suporta a instalação do JDK em um diretório específico.
azureResourceGroupName
-
nome do Grupo de Recursos
string
. Opcional. Use quando jdkSourceOption == AzureStorage
.
Nome do Grupo de Recursos da conta de armazenamento.
cleanDestinationDirectory
-
Limpar diretório de destino
boolean
. Opcional. Use quando jdkSourceOption != PreInstalled
. Valor padrão: true
.
Especifica a opção para limpar o diretório de destino antes que o JDK seja extraído para ele.
createExtractDirectory
-
Criar diretório para extrair
boolean
. Opcional. Use quando jdkSourceOption != PreInstalled
. Valor padrão: true
.
Por padrão, a tarefa cria um diretório semelhante ao JAVA_HOME_8_X64_OpenJDK_zip
para extrair o JDK. Essa opção desabilita a criação dessa pasta e, se definida como false
, o JDK está localizado na raiz do jdkDestinationDirectory
em vez disso.
Opções de controlo de tarefas
Todas as tarefas têm opções de controle, além de suas entradas de tarefas. Para obter mais informações, consulte Opções de controle de e propriedades de tarefas comuns.
Variáveis de saída
Nenhuma.
Comentários
Use esta tarefa para adquirir uma versão específica do Java a partir de um blob do Azure fornecido pelo usuário, um local na origem ou no agente ou o cache de ferramentas. A tarefa também define a variável de ambiente JAVA_HOME
.
Use esta tarefa para alterar a versão do Java usada em tarefas Java.
Observação
Para executar a tarefa Java Tool Installer no macOS, é necessário que o usuário sob o qual o agente está sendo executado tenha permissão para executar o comando sudo sem uma senha. Você pode seguir as próximas etapas para habilitar essa permissão:
- Execute o comando sudo visudo. O arquivo sudoers é aberto para edição.
- Vá para a parte inferior do arquivo e adicione a seguinte linha:
user ALL=NOPASSWD: /usr/sbin/installer
(Substituir usuário pelo alias de usuário real).- Salve e feche o arquivo.
Exemplos
Aqui está um exemplo de como obter o arquivo de um diretório local no Linux. O arquivo deve ser um arquivo (.zip, .gz) do diretório JAVA_HOME
, por isso inclui os diretórios bin
, lib
, include
, jre
, etc.
- task: JavaToolInstaller@1
inputs:
versionSpec: "11"
jdkArchitectureOption: x64
jdkSourceOption: LocalDirectory
jdkFile: "/builds/openjdk-11.0.2_linux-x64_bin.tar.gz"
jdkDestinationDirectory: "/builds/binaries/externals"
cleanDestinationDirectory: true
Veja um exemplo de como baixar o arquivo morto do Armazenamento do Azure.
O arquivo deve ser um arquivo (.zip, .gz) do diretório JAVA_HOME
, por isso inclui os diretórios bin
, lib
, include
, jre
, etc.
Observação
Esta versão da tarefa acessa o armazenamento do Azure usando uma conexão de serviço do Azure Resource Manager configurada usando a federação de identidade de carga de trabalho e o RBAC do Azure. Para obter mais informações, consulte Atribuir uma função do Azure para acesso a dados de blob.
- task: JavaToolInstaller@1
inputs:
versionSpec: '6'
jdkArchitectureOption: 'x64'
jdkSourceOption: AzureStorage
azureResourceManagerEndpoint: myARMServiceConnection
azureStorageAccountName: myAzureStorageAccountName
azureContainerName: myAzureStorageContainerName
azureCommonVirtualFile: 'jdk1.6.0_45.zip'
jdkDestinationDirectory: '$(agent.toolsDirectory)/jdk6'
cleanDestinationDirectory: false
Aqui está um exemplo de como usar o recurso "pré-instalado". Esse recurso permite que você use versões Java pré-instaladas no agente hospedado pela Microsoft. Você pode encontrar versões pré-instaladas disponíveis do Java em coluna de software incluído na tabela de agentes hospedados.
- task: JavaToolInstaller@1
inputs:
versionSpec: '8'
jdkArchitectureOption: 'x64'
jdkSourceOption: 'PreInstalled'
Requerimentos
Exigência | Descrição |
---|---|
Tipos de pipeline | YAML, Construção clássica, Versão clássica |
Funciona em | Agente, DeploymentGroup |
Exigências | Nenhum |
Capacidades | A execução desta tarefa satisfaz as seguintes exigências para quaisquer tarefas subsequentes no mesmo trabalho: Java, JDK |
Restrições de comando | Esta tarefa é executada usando as seguintes restrições de comando : restrito |
Variáveis configuráveis | Esta tarefa tem permissão para definir as seguintes variáveis: PATH, JAVA_HOME* |
Versão do agente | 2.182.1 ou superior |
Categoria de tarefa | Ferramenta |