Partilhar via


JavaToolInstaller@0 - Tarefa do instalador de ferramentas Java v0

Utilize esta tarefa para adquirir uma versão específica do Java a partir de um blob do Azure fornecido pelo utilizador ou da cache de ferramentas e definir JAVA_HOME.

Syntax

# 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ório. Valor predefinido: 8.

Especifica a versão do JDK a disponibilizar no caminho. Utilize uma versão de número inteiro, como 10.


jdkArchitectureOption - Arquitetura do JDK
string. Obrigatório. Valores permitidos: x64, x86.

Especifica a arquitetura (x86, x64) do JDK.


jdkSourceOption - Origem do JDK
string. Obrigatório. Valores permitidos: AzureStorage (Armazenamento do Azure), LocalDirectory (Diretório Local), PreInstalled (Pré-instalado).

Especifica a origem para o JDK comprimido. A origem pode ser o armazenamento de blobs do Azure ou um diretório local no agente ou repositório de origem ou pode utilizar a versão pré-instalada do Java (disponível para agentes alojados na Microsoft). Veja o exemplo abaixo sobre como utilizar a versão pré-instalada do Java.


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

Especifica a origem para o JDK comprimido. A origem pode ser o armazenamento de blobs do Azure ou um diretório local no agente ou repositório de origem ou pode utilizar a versão pré-instalada do Java (disponível para agentes alojados na Microsoft). Veja o exemplo abaixo sobre como utilizar a versão pré-instalada do Java.


jdkFile - Ficheiro JDK
string. Necessário quando jdkSourceOption == LocalDirectory.

Especifica o caminho para o ficheiro de arquivo JDK que contém o JDK comprimido. O caminho pode estar no repositório de origem ou num caminho local no agente. O ficheiro deve ser um arquivo (.zip, .tar.gz, .7z) que contém a pasta bin ao nível da raiz ou dentro de um único diretório. O MacOS suporta ficheiros .pkg e .dmg que contêm apenas um ficheiro .pkg no interior.


azureResourceManagerEndpoint - Subscrição do Azure
string. Necessário quando jdkSourceOption == AzureStorage.

Especifica a subscrição do Azure Resource Manager para o JDK.


azureStorageAccountName - Nome da conta de armazenamento
string. Necessário quando jdkSourceOption == AzureStorage.

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


azureContainerName - Nome do contentor
string. Necessário quando jdkSourceOption == AzureStorage.

Especifica o nome do contentor 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 contentor 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 windows, este é utilizado como o diretório de destino para a instalação do JDK. No macOS, este diretório é utilizado como uma pasta temporária para extrair .dmg's porque o macOS não suporta a instalação do JDK num diretório específico.


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

Especifica o diretório de destino onde o JDK deve ser extraído. No Linux e windows, este é utilizado como o diretório de destino para a instalação do JDK. No macOS, este diretório é utilizado como uma pasta temporária para extrair .dmg's porque o macOS não suporta a instalação do JDK num diretório específico.


azureResourceGroupName - Nome do Grupo de Recursos
string. Opcional. Utilize quando jdkSourceOption == AzureStorage.

Nome do Grupo de Recursos da conta de armazenamento.


cleanDestinationDirectory - Limpar diretório de destino
boolean. Opcional. Utilize quando jdkSourceOption != PreInstalled. Valor predefinido: true.

Especifica a opção para limpar o diretório de destino antes de o JDK ser extraído para o mesmo.


cleanDestinationDirectory - Limpar diretório de destino
boolean. Valor predefinido: true.

Especifica a opção para limpar o diretório de destino antes de o JDK ser extraído para o mesmo.


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

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


Opções de controlo de tarefas

Todas as tarefas têm opções de controlo para além das entradas de tarefas. Para obter mais informações, veja Opções de controlo e propriedades de tarefas comuns.

Variáveis de saída

Nenhum.

Observações

Utilize esta tarefa para adquirir uma versão específica do Java a partir de um blob do Azure fornecido pelo utilizador, de uma localização na origem ou no agente ou da cache de ferramentas. A tarefa também define a variável de JAVA_HOME ambiente. Utilize esta tarefa para alterar a versão do Java utilizada em tarefas Java.

Nota

Para executar a tarefa Do Instalador de Ferramentas java no macOS, é necessário que o utilizador no qual o agente está a executar tenha permissão para executar o comando sudo sem uma palavra-passe. Pode seguir os passos seguintes para ativar esta permissão:

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

Exemplos

Eis um exemplo de como obter o ficheiro de arquivo a partir de um diretório local no Linux. O ficheiro deve ser um arquivo (.zip, .gz) do JAVA_HOME diretório, pelo que inclui os bindiretórios , lib, include, jre, etc.

  - 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

Eis um exemplo de transferência do ficheiro de arquivo a partir do Armazenamento do Azure. O ficheiro deve ser um arquivo (.zip, .gz) do JAVA_HOME diretório, pelo que inclui os bindiretórios , lib, include, jre, etc.

- 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

Eis um exemplo de utilização da funcionalidade "pré-instalada". Esta funcionalidade permite-lhe utilizar versões Java pré-instaladas no agente alojado pela Microsoft. Pode encontrar versões pré-instaladas do Java disponíveis na coluna de software incluído na tabela de agentes alojados.

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

Requisitos

Requisito Description
Tipos de pipeline YAML, Compilação clássica, Versão clássica
É executado em Agent, DeploymentGroup
Exigências Nenhuma
Capacidades A execução desta tarefa satisfaz as seguintes exigências para quaisquer tarefas subsequentes no mesmo trabalho: Java, JDK
Restrições de comandos Esta tarefa é executada com as seguintes restrições de comando: restritas
Variáveis de definição Esta 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 Description
Tipos de pipeline YAML, Compilação clássica, Versão clássica
É executado em Agent, DeploymentGroup
Exigências Nenhuma
Capacidades A execução desta tarefa satisfaz as seguintes exigências para quaisquer tarefas subsequentes no mesmo trabalho: Java, JDK
Restrições de comandos Qualquer
Variáveis de definição Qualquer
Versão do agente Todas as versões de agente suportadas.
Categoria da tarefa Ferramenta
Requisito Description
Tipos de pipeline YAML, Compilação clássica, Versão clássica
É executado em Agent, DeploymentGroup
Exigências Nenhuma
Capacidades A execução desta tarefa satisfaz as seguintes exigências para quaisquer tarefas subsequentes no mesmo trabalho: Java
Restrições de comandos Qualquer
Variáveis de definição Qualquer
Versão do agente Todas as versões de agente suportadas.
Categoria da tarefa Ferramenta

Ver também

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