JavaToolInstaller@0 – Java Tool Installer v0-uppgift

Använd den här uppgiften för att hämta en specifik version av Java från en Azure-blob som tillhandahålls av användaren eller verktygets cacheminne och ange 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.

Indata

versionSpec - JDK-version
string. Krävs. Standardvärde: 8.

Anger vilken JDK-version som ska vara tillgänglig på sökvägen. Använd en heltalsversion, till exempel 10.


jdkArchitectureOption - JDK-arkitektur
string. Krävs. Tillåtna värden: x64, x86.

Anger JDK:s arkitektur (x86, x64).


jdkSourceOption - JDK-källa
string. Krävs. Tillåtna värden: AzureStorage (Azure Storage), LocalDirectory (lokal katalog) PreInstalled (förinstallerade).

Anger källan för den komprimerade JDK:en. Källan kan vara Azure Blob Storage eller en lokal katalog på agenten eller källlagringsplatsen, eller så kan du använda den förinstallerade versionen av Java (tillgänglig för Microsoft-värdbaserade agenter). Se exemplet nedan om hur du använder den förinstallerade versionen av Java.


jdkSourceOption - JDK-källa
string. Krävs. Tillåtna värden: AzureStorage (Azure Storage), LocalDirectory (Lokal katalog).

Anger källan för den komprimerade JDK:en. Källan kan vara Azure Blob Storage eller en lokal katalog på agenten eller källlagringsplatsen, eller så kan du använda den förinstallerade versionen av Java (tillgänglig för Microsoft-värdbaserade agenter). Se exemplet nedan om hur du använder den förinstallerade versionen av Java.


jdkFile - JDK-fil
string. Krävs när jdkSourceOption == LocalDirectory.

Anger sökvägen till JDK-arkivfilen som innehåller den komprimerade JDK:en. Sökvägen kan finnas i källlagringsplatsen eller en lokal sökväg på agenten. Filen ska vara ett arkiv (.zip, .tar.gz, .7z) som innehåller bin-mappen på rotnivå eller inuti en enda katalog. MacOS stöder .pkg- och .dmg-filer som bara innehåller en .pkg-fil inuti.


azureResourceManagerEndpoint - Azure-prenumeration
string. Krävs när jdkSourceOption == AzureStorage.

Anger Azure Resource Manager-prenumerationen för JDK:t.


azureStorageAccountName - Lagringskontonamn
string. Krävs när jdkSourceOption == AzureStorage.

Anger klassiska Azure-konton eller Resource Manager lagringskonton. Välj namnet på lagringskontot där JDK:et finns.


azureContainerName - Containernamn
string. Krävs när jdkSourceOption == AzureStorage.

Anger namnet på containern i lagringskontot där JDK:et finns.


azureCommonVirtualFile - Vanlig virtuell sökväg
string. Krävs när jdkSourceOption == AzureStorage.

Anger sökvägen till JDK:et i Azure Storage-containern.


jdkDestinationDirectory - Målkatalog
string. Krävs när jdkSourceOption != PreInstalled.

Anger målkatalogen där JDK:et ska extraheras. I Linux och Windows används detta som målkatalog för JDK-installationen. I macOS används den här katalogen som en tillfällig mapp för att extrahera .dmg eftersom macOS inte stöder installation av JDK till en specifik katalog.


jdkDestinationDirectory - Målkatalog
string. Krävs.

Anger målkatalogen där JDK:et ska extraheras. I Linux och Windows används detta som målkatalog för JDK-installationen. I macOS används den här katalogen som en tillfällig mapp för att extrahera .dmg eftersom macOS inte stöder installation av JDK till en specifik katalog.


azureResourceGroupName - Resursgruppsnamn
string. Valfritt. Använd när jdkSourceOption == AzureStorage.

Lagringskontots resursgruppnamn.


cleanDestinationDirectory - Rensa målkatalog
boolean. Valfritt. Använd när jdkSourceOption != PreInstalled. Standardvärde: true.

Anger alternativet för att rensa målkatalogen innan JDK extraheras till den.


cleanDestinationDirectory - Rensa målkatalog
boolean. Standardvärde: true.

Anger alternativet för att rensa målkatalogen innan JDK extraheras till den.


createExtractDirectory - Skapa katalog för att extrahera
boolean. Valfritt. Använd när jdkSourceOption != PreInstalled. Standardvärde: true.

Som standard skapar aktiviteten en katalog som liknar för att JAVA_HOME_8_X64_OpenJDK_zip extrahera JDK. Det här alternativet inaktiverar skapandet av mappen och, om det är inställt på false, finns JDK i roten för jdkDestinationDirectory i stället.


Kontrollalternativ för aktivitet

Alla aktiviteter har kontrollalternativ utöver sina aktivitetsindata. Mer information finns i Kontrollalternativ och vanliga uppgiftsegenskaper.

Utdatavariabler

Inga.

Kommentarer

Använd den här uppgiften för att hämta en specifik version av Java från en Azure-blob som tillhandahålls av användaren, en plats i källan eller på agenten eller verktygens cacheminne. Uppgiften anger JAVA_HOME även miljövariabeln. Använd den här uppgiften om du vill ändra den version av Java som används i Java-uppgifter.

Anteckning

Om du vill köra Java Tool Installer-uppgiften på macOS krävs det att användaren som agenten körs under har behörighet att köra sudo-kommandot utan lösenord. Du kan följa nästa steg för att aktivera den här behörigheten:

  1. Kör kommandot sudo visudo . Sudoers-filen öppnas för redigering.
  2. Gå till slutet av filen och lägg till följande rad: user ALL=NOPASSWD: /usr/sbin/installer (Ersätt användaren med det faktiska användaraliaset).
  3. Spara och stäng filen.

Exempel

Här är ett exempel på hur du hämtar arkivfilen från en lokal katalog i Linux. Filen ska vara ett arkiv (.zip, .gz) för JAVA_HOME katalogen, så den innehåller binkatalogerna , lib, include, jreosv.

  - 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

Här är ett exempel på hur du laddar ned arkivfilen från Azure Storage. Filen ska vara ett arkiv (.zip, .gz) för JAVA_HOME katalogen, så den innehåller binkatalogerna , lib, include, jreosv.

- 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

Här är ett exempel på hur du använder funktionen "förinstallerad". Med den här funktionen kan du använda Java-versioner som är förinstallerade på den Microsoft-värdbaserade agenten. Du hittar tillgängliga förinstallerade versioner av Java i den inkluderade programvarukolumnen i tabellen med värdbaserade agenter.

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

Krav

Krav Beskrivning
Pipelinetyper YAML, klassisk version, klassisk version
Körs på Agent, DeploymentGroup
Krav Ingen
Funktioner Om du kör den här uppgiften uppfyller du följande krav för efterföljande uppgifter i samma jobb: Java, JDK
Kommandobegränsningar Den här uppgiften körs med följande kommandobegränsningar: begränsad
Inställningsbara variabler Den här aktiviteten har behörighet att ange följande variabler: PATH, JAVA_HOME*
Agentversion 2.182.1 eller senare
Uppgiftskategori Verktyg
Krav Beskrivning
Pipelinetyper YAML, klassisk version, klassisk version
Körs på Agent, DeploymentGroup
Krav Ingen
Funktioner Om du kör den här uppgiften uppfyller du följande krav för efterföljande uppgifter i samma jobb: Java, JDK
Kommandobegränsningar Valfri
Inställningsbara variabler Valfri
Agentversion Alla agentversioner som stöds.
Uppgiftskategori Verktyg
Krav Beskrivning
Pipelinetyper YAML, klassisk version, klassisk version
Körs på Agent, DeploymentGroup
Krav Ingen
Funktioner Om du kör den här uppgiften uppfyller du följande krav för efterföljande uppgifter i samma jobb: Java
Kommandobegränsningar Valfri
Inställningsbara variabler Valfri
Agentversion Alla agentversioner som stöds.
Uppgiftskategori Verktyg

Se även

En förklaring av verktygsinstallationer och exempel finns i Verktygsinstallationer.