Partager via


JavaToolInstaller@0 - Tâche du programme d’installation de l’outil Java v0

Utilisez cette tâche pour acquérir une version spécifique de Java à partir d’un objet blob Azure fourni par l’utilisateur ou du cache de l’outil et définissez 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.

Entrées

versionSpec - Version du JDK
string. Obligatoire. Valeur par défaut : 8.

Spécifie la version du JDK à rendre disponible sur le chemin d’accès. Utilisez une version de nombre entier, par exemple 10.


jdkArchitectureOption - Architecture JDK
string. Obligatoire. Valeurs autorisées : x64, x86.

Spécifie l’architecture (x86, x64) du JDK.


jdkSourceOption - Source JDK
string. Obligatoire. Valeurs autorisées : AzureStorage (Stockage Azure), LocalDirectory (Répertoire local), PreInstalled (Préinstallé).

Spécifie la source du JDK compressé. La source peut être stockage Blob Azure ou un répertoire local sur l’agent ou le référentiel source, ou vous pouvez utiliser la version préinstallée de Java (disponible pour les agents hébergés par Microsoft). Consultez l’exemple ci-dessous sur l’utilisation de la version préinstallée de Java.


jdkSourceOption - Source JDK
string. Obligatoire. Valeurs autorisées : AzureStorage (Stockage Azure), LocalDirectory (Répertoire local).

Spécifie la source du JDK compressé. La source peut être stockage Blob Azure ou un répertoire local sur l’agent ou le référentiel source, ou vous pouvez utiliser la version préinstallée de Java (disponible pour les agents hébergés par Microsoft). Consultez l’exemple ci-dessous sur l’utilisation de la version préinstallée de Java.


jdkFile - Fichier JDK
string. Nécessaire lorsque jdkSourceOption == LocalDirectory.

Spécifie le chemin d’accès au fichier d’archive JDK qui contient le JDK compressé. Le chemin d’accès peut se trouver dans votre référentiel source ou dans un chemin local sur l’agent. Le fichier doit être une archive (.zip, .tar.gz, .7z) contenant le dossier bin au niveau racine ou à l’intérieur d’un répertoire unique. MacOS prend en charge les fichiers .pkg et .dmg contenant un seul fichier .pkg.


azureResourceManagerEndpoint - Abonnement Azure
string. Nécessaire lorsque jdkSourceOption == AzureStorage.

Spécifie l’abonnement Azure Resource Manager pour le JDK.


azureStorageAccountName - Nom du compte de stockage
string. Nécessaire lorsque jdkSourceOption == AzureStorage.

Spécifie les comptes de stockage Azure Classic ou Resource Manager. Sélectionnez le nom du compte de stockage dans lequel se trouve le JDK.


azureContainerName - Nom du conteneur
string. Nécessaire lorsque jdkSourceOption == AzureStorage.

Spécifie le nom du conteneur dans le compte de stockage où se trouve le JDK.


azureCommonVirtualFile - Chemin d’accès virtuel commun
string. Nécessaire lorsque jdkSourceOption == AzureStorage.

Spécifie le chemin d’accès au JDK à l’intérieur du conteneur de stockage Azure.


jdkDestinationDirectory - Répertoire de destination
string. Nécessaire lorsque jdkSourceOption != PreInstalled.

Spécifie le répertoire de destination où le JDK doit être extrait. Sur Linux et Windows, il est utilisé comme répertoire de destination pour l’installation du JDK. Sur macOS, ce répertoire est utilisé comme dossier temporaire pour l’extraction de .dmg, car macOS ne prend pas en charge l’installation du JDK dans un répertoire spécifique.


jdkDestinationDirectory - Répertoire de destination
string. Obligatoire.

Spécifie le répertoire de destination où le JDK doit être extrait. Sur Linux et Windows, il est utilisé comme répertoire de destination pour l’installation du JDK. Sur macOS, ce répertoire est utilisé comme dossier temporaire pour l’extraction de .dmg, car macOS ne prend pas en charge l’installation du JDK dans un répertoire spécifique.


azureResourceGroupName - Nom du groupe de ressources
string. facultatif. Utilisez quand jdkSourceOption == AzureStorage.

Nom du groupe de ressources du compte de stockage.


cleanDestinationDirectory - Nettoyer le répertoire de destination
boolean. facultatif. Utilisez quand jdkSourceOption != PreInstalled. Valeur par défaut : true.

Spécifie l’option permettant d’propre le répertoire de destination avant que le JDK y soit extrait.


cleanDestinationDirectory - Nettoyer le répertoire de destination
boolean. Valeur par défaut : true.

Spécifie l’option permettant d’propre le répertoire de destination avant que le JDK y soit extrait.


createExtractDirectory - Créer un répertoire pour l’extraction
boolean. facultatif. Utilisez quand jdkSourceOption != PreInstalled. Valeur par défaut : true.

Par défaut, la tâche crée un répertoire similaire à pour JAVA_HOME_8_X64_OpenJDK_zip l’extraction du JDK. Cette option désactive la création de ce dossier et, si elle est définie sur false, le JDK se trouve à la racine de jdkDestinationDirectory à la place.


Options de contrôle de la tâche

Toutes les tâches ont des options de contrôle en plus de leurs entrées de tâches. Pour plus d’informations, consultez Options de contrôle et propriétés de tâche courantes.

Variables de sortie

Aucun.

Notes

Utilisez cette tâche pour acquérir une version spécifique de Java à partir d’un objet blob Azure fourni par l’utilisateur, d’un emplacement dans la source ou sur l’agent, ou du cache des outils. La tâche définit également la variable d’environnement JAVA_HOME . Utilisez cette tâche pour modifier la version de Java utilisée dans les tâches Java.

Notes

Pour exécuter la tâche d’installation de l’outil Java sur macOS, l’utilisateur sous lequel l’agent s’exécute doit avoir l’autorisation d’exécuter la commande sudo sans mot de passe. Vous pouvez suivre les étapes suivantes pour activer cette autorisation :

  1. Exécutez la commande sudo visudo . Le fichier sudoers s’ouvre pour modification.
  2. Accédez au bas du fichier et ajoutez la ligne suivante : user ALL=NOPASSWD: /usr/sbin/installer (Remplacez user par l’alias utilisateur réel).
  3. Enregistrez et fermez le fichier.

Exemples

Voici un exemple d’obtention du fichier d’archive à partir d’un répertoire local sur Linux. Le fichier doit être une archive (.zip, .gz) du JAVA_HOME répertoire. Il inclut donc les binrépertoires , 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

Voici un exemple de téléchargement du fichier d’archive à partir du Stockage Azure. Le fichier doit être une archive (.zip, .gz) du JAVA_HOME répertoire. Il inclut donc les binrépertoires , 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

Voici un exemple d’utilisation de la fonctionnalité « préinstallée ». Cette fonctionnalité vous permet d’utiliser des versions Java préinstallées sur l’agent hébergé par Microsoft. Vous trouverez des versions préinstallées de Java disponibles dans la colonne logicielle incluse dans la table des agents hébergés.

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

Configuration requise

Condition requise Description
Types de pipelines YAML, build classique, version classique
S’exécute sur Agent, DeploymentGroup
Demandes None
Capabilities L’exécution de cette tâche répond aux exigences suivantes pour toutes les tâches suivantes dans le même travail : Java, JDK
Restrictions de commande Cette tâche s’exécute à l’aide des restrictions de commande suivantes : restricted
Variables paramétrables Cette tâche est autorisée à définir les variables suivantes : PATH, JAVA_HOME*
Version de l’agent 2.182.1 ou version ultérieure
Catégorie de la tâche Outil
Condition requise Description
Types de pipelines YAML, build classique, version classique
S’exécute sur Agent, DeploymentGroup
Demandes None
Capabilities L’exécution de cette tâche répond aux exigences suivantes pour toutes les tâches suivantes dans le même travail : Java, JDK
Restrictions de commande Quelconque
Variables paramétrables Quelconque
Version de l’agent Toutes les versions d’agent prises en charge.
Catégorie de la tâche Outil
Condition requise Description
Types de pipelines YAML, build classique, version classique
S’exécute sur Agent, DeploymentGroup
Demandes None
Capabilities L’exécution de cette tâche répond aux exigences suivantes pour toutes les tâches suivantes dans le même travail : Java
Restrictions de commande Quelconque
Variables paramétrables Quelconque
Version de l’agent Toutes les versions d’agent prises en charge.
Catégorie de la tâche Outil

Voir aussi

Pour obtenir une explication sur les programmes d’installation d’outils et des exemples, consultez Programmes d’installation des outils.