Compartilhar via


tarefa JavaToolInstaller@0 – instalador de ferramentas Java v0

Use esta tarefa para adquirir uma versão específica do Java de um blob do Azure fornecido pelo usuário ou do cache de ferramentas e definir JAVA_HOME.

Sintaxe

# Java tool installer v0
# Acquire a specific version of Java from a user-supplied Azure blob or the tool cache and sets JAVA_HOME.
- task: JavaToolInstaller@0
  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.
# Java tool installer v0
# Acquire a specific version of Java from a user-supplied Azure blob or the tool cache and sets JAVA_HOME.
- task: JavaToolInstaller@0
  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. 
    #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.
# Java tool installer v0
# Acquire a specific version of Java from a user-supplied Azure blob or the tool cache and sets JAVA_HOME.
- task: JavaToolInstaller@0
  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. 
    #cleanDestinationDirectory: true # boolean. Optional. Use when jdkSourceOption != PreInstalled. Clean destination directory. Default: true.
# Java tool installer v0
# Acquire a specific version of Java from a user-supplied Azure blob or the tool cache and sets JAVA_HOME.
- task: JavaToolInstaller@0
  inputs:
    versionSpec: '8' # string. Required. JDK version. Default: 8.
    jdkArchitectureOption: # 'x64' | 'x86'. Required. JDK architecture. 
    jdkSourceOption: # 'AzureStorage' | 'LocalDirectory'. 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. Destination directory. 
    #cleanDestinationDirectory: true # boolean. Clean destination directory. Default: true.
# Java Tool Installer v0
# Acquires a specific version of Java from a user supplied Azure blob or the tools cache and sets JAVA_HOME. Use this task to change the version of Java used in Java tasks.
- task: JavaToolInstaller@0
  inputs:
    versionSpec: '8' # string. Required. JDK version. Default: 8.
    jdkArchitectureOption: # 'x64' | 'x86'. Required. JDK architecture. 
    jdkSourceOption: # 'AzureStorage' | 'LocalDirectory'. 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. Destination directory. 
    #cleanDestinationDirectory: true # boolean. Clean destination directory. Default: true.

Entradas

versionSpec - Versão do JDK
string. Obrigatórios. 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 do JDK
string. Obrigatórios. Valores Permitidos: x64 e x86.

Especifica a arquitetura (x86, x64) do JDK.


jdkSourceOption - Origem do JDK
string. Obrigatórios. 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 blobs 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.


jdkSourceOption - Origem do JDK
string. Obrigatórios. Valores permitidos: AzureStorage (Armazenamento do Azure) LocalDirectory (Diretório Local).

Especifica a origem do JDK compactado. A origem pode ser o armazenamento de blobs 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.


jdkFile - Arquivo JDK
string. Obrigatório quando jdkSourceOption == LocalDirectory.

Especifica o caminho para o arquivo de arquivo 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 morto (.zip, .tar.gz, .7z) que contém a pasta bin no nível raiz ou dentro de um único diretório. O MacOS dá suporte a arquivos .pkg e .dmg que contêm apenas um arquivo .pkg dentro.


azureResourceManagerEndpoint - Assinatura do Azure
string. Obrigatório quando jdkSourceOption == AzureStorage.

Especifica a assinatura de Resource Manager do Azure para o JDK.


azureStorageAccountName - Nome da conta de armazenamento
string. Obrigatório quando jdkSourceOption == AzureStorage.

Especifica contas de armazenamento clássicas ou Resource Manager do Azure. Selecione o nome da conta de armazenamento na qual o JDK está localizado.


azureContainerName - Nome do contêiner
string. Obrigatório quando jdkSourceOption == AzureStorage.

Especifica o nome do contêiner na conta de armazenamento em que o JDK está localizado.


azureCommonVirtualFile - Caminho virtual comum
string. Obrigatório quando jdkSourceOption == AzureStorage.

Especifica o caminho para o JDK dentro do contêiner de armazenamento do Azure.


jdkDestinationDirectory - Diretório de destino
string. Obrigatório quando jdkSourceOption != PreInstalled.

Especifica o diretório de destino em que o JDK deve ser extraído. No Linux e no Windows, isso é 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's porque o macOS não dá suporte à instalação do JDK em um diretório específico.


jdkDestinationDirectory - Diretório de destino
string. Obrigatórios.

Especifica o diretório de destino em que o JDK deve ser extraído. No Linux e no Windows, isso é 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's porque o macOS não dá suporte à 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 - Diretório de destino limpo
boolean. Opcional. Use quando jdkSourceOption != PreInstalled. Valor padrão: true.

Especifica a opção de limpo o diretório de destino antes que o JDK seja extraído nele.


cleanDestinationDirectory - Diretório de destino limpo
boolean. Valor padrão: true.

Especifica a opção de limpo o diretório de destino antes que o JDK seja extraído nele.


createExtractDirectory - Criar diretório para extração
boolean. Opcional. Use quando jdkSourceOption != PreInstalled. Valor padrão: true.

Por padrão, a tarefa cria um diretório semelhante ao para JAVA_HOME_8_X64_OpenJDK_zip extrair o JDK. Essa opção desabilita a criação dessa pasta e, se definida como false, o JDK está localizado na raiz de jdkDestinationDirectory .


Opções de controle da tarefa

Todas as tarefas têm opções de controle além de suas entradas de tarefa. Para obter mais informações, consulte Opções de controle e propriedades comuns da tarefa.

Variáveis de saída

Nenhum.

Comentários

Use essa tarefa para adquirir uma versão específica do Java de um blob do Azure fornecido pelo usuário, um local na origem ou no agente ou no cache de ferramentas. A tarefa também define a JAVA_HOME variável de ambiente. Use essa tarefa para alterar a versão do Java usada em tarefas Java.

Observação

Para executar a tarefa Do Instalador de Ferramentas Java no macOS, é necessário que o usuário sob o qual o agente esteja executando tenha permissão para executar o comando sudo sem uma senha. Caso seja necessário, siga as próximas etapas para habilitar essa permissão:

  1. Execute o comando sudo visudo . O arquivo sudoers é aberto para edição.
  2. Vá para a parte inferior do arquivo e adicione a seguinte linha: user ALL=NOPASSWD: /usr/sbin/installer (Substitua o usuário pelo alias do usuário real).
  3. Salve e feche o arquivo.

Exemplos

Aqui está um exemplo de como obter o arquivo morto de um diretório local no Linux. O arquivo deve ser um arquivo morto (.zip, .gz) do JAVA_HOME diretório, portanto, inclui os bindiretórios , lib, include, jreetc.

  - task: JavaToolInstaller@0
    inputs:
      versionSpec: "11"
      jdkArchitectureOption: x64
      jdkSourceOption: LocalDirectory
      jdkFile: "/builds/openjdk-11.0.2_linux-x64_bin.tar.gz"
      jdkDestinationDirectory: "/builds/binaries/externals"
      cleanDestinationDirectory: true

Aqui está um exemplo de como baixar o arquivo morto do Armazenamento do Azure. O arquivo deve ser um arquivo morto (.zip, .gz) do JAVA_HOME diretório, portanto, inclui os bindiretórios , lib, include, jreetc.

- task: JavaToolInstaller@0
  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 na coluna de software incluída na tabela de agentes hospedados.

- task: JavaToolInstaller@0
  inputs:
    versionSpec: '8'
    jdkArchitectureOption: 'x64'
    jdkSourceOption: 'PreInstalled'

Requisitos

Requisito Descrição
Tipos de pipeline YAML, build clássico, versão clássica
Executa em Agent, DeploymentGroup
Demandas Nenhum
Funcionalidades A execução dessa tarefa atende às seguintes demandas para todas as tarefas subsequentes no mesmo trabalho: Java, JDK
Restrições de comando Essa tarefa é executada usando as seguintes restrições de comando: restrito
Variáveis configuráveis Essa tarefa tem permissão para definir as seguintes variáveis: PATH, JAVA_HOME*
Versão do agente 2.182.1 ou superior
Categoria da tarefa Ferramenta
Requisito Descrição
Tipos de pipeline YAML, build clássico, versão clássica
Executa em Agent, DeploymentGroup
Demandas Nenhum
Funcionalidades A execução dessa tarefa atende às seguintes demandas para todas as tarefas subsequentes no mesmo trabalho: Java, JDK
Restrições de comando Qualquer
Variáveis configuráveis Qualquer
Versão do agente Todas as versões do agente com suporte.
Categoria da tarefa Ferramenta
Requisito Descrição
Tipos de pipeline YAML, build clássico, versão clássica
Executa em Agent, DeploymentGroup
Demandas Nenhum
Funcionalidades A execução dessa tarefa atende às seguintes demandas para todas as tarefas subsequentes no mesmo trabalho: Java
Restrições de comando Qualquer
Variáveis configuráveis Qualquer
Versão do agente Todas as versões do agente com suporte.
Categoria da tarefa Ferramenta

Confira também

Para obter uma explicação dos instaladores de ferramentas e exemplos, confira Instaladores de ferramentas.