JavaToolInstaller@1 – Java-verktygsinstallation v1-uppgift
Hämta en specifik version av Java från en Azure-blob som tillhandahålls av användaren eller verktygets cacheminne och uppsättningar JAVA_HOME.
Syntax
# 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.
Ingångar
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örinstallerad).
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.
Not
Den här versionen av uppgiften får åtkomst till Azure Storage med hjälp av en Azure Resource Manager-tjänstanslutning konfigurerad med hjälp av arbetsbelastningsidentitetsfederation och Azure RBAC. Mer information finns i Tilldela en Azure-roll för åtkomst till blobdata.
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 mappen bin 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.
azureStorageAccountName
-
Lagringskontonamn
string
. Krävs när jdkSourceOption == AzureStorage
.
Anger Azure Classic- eller Resource Manager-lagringskonton. Välj det lagringskontonamn 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
-
Gemensam 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 i en specifik katalog.
azureResourceGroupName
-
resursgruppsnamn
string
. Valfri. Använd när jdkSourceOption == AzureStorage
.
Resursgruppens namn på lagringskontot.
cleanDestinationDirectory
-
Rensa målkatalogen
boolean
. Valfri. Använd när jdkSourceOption != PreInstalled
. Standardvärde: true
.
Anger alternativet att rensa målkatalogen innan JDK extraheras till den.
createExtractDirectory
-
Skapa katalog för att extrahera
boolean
. Valfri. Använd när jdkSourceOption != PreInstalled
. Standardvärde: true
.
Som standard skapar aktiviteten en katalog som liknar JAVA_HOME_8_X64_OpenJDK_zip
för att 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.
Alternativ för aktivitetskontroll
Alla aktiviteter har kontrollalternativ utöver sina uppgiftsindata. Mer information finns i Kontrollalternativ och vanliga uppgiftsegenskaper.
Utdatavariabler
Ingen.
Anmärkningar
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 verktygscachen. Uppgiften anger även miljövariabeln JAVA_HOME
.
Använd den här uppgiften för att ändra den version av Java som används i Java-uppgifter.
Not
För att köra Java Tool Installer uppgift på macOS krävs det för att användaren som agenten kör ska ha behörighet att köra kommandot sudo utan lösenord. Du kan följa nästa steg för att aktivera den här behörigheten:
- Kör kommandot sudo visudo. Sudoers-filen öppnas för redigering.
- 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).- 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) i katalogen JAVA_HOME
, så den innehåller katalogerna bin
, lib
, include
, jre
osv.
- 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
Här är ett exempel på hur du laddar ned arkivfilen från Azure Storage.
Filen ska vara ett arkiv (.zip, .gz) i katalogen JAVA_HOME
, så den innehåller katalogerna bin
, lib
, include
, jre
osv.
Not
Den här versionen av uppgiften får åtkomst till Azure Storage med hjälp av en Azure Resource Manager-tjänstanslutning konfigurerad med hjälp av arbetsbelastningsidentitetsfederation och Azure RBAC. Mer information finns i Tilldela en Azure-roll för åtkomst till blobdata.
- 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
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 värdbaserade agenter.
- task: JavaToolInstaller@1
inputs:
versionSpec: '8'
jdkArchitectureOption: 'x64'
jdkSourceOption: 'PreInstalled'
Krav
Krav | Beskrivning |
---|---|
Pipelinetyper | YAML, klassisk version, klassisk version |
Körs på | Agent, DeploymentGroup |
kräver | Ingen |
funktioner | Om du kör den här uppgiften uppfyller följande krav för efterföljande uppgifter i samma jobb: Java, JDK |
Kommandobegränsningar | Den här aktiviteten körs med hjälp av följande kommandobegränsningar: begränsad |
variabler som kan | Den här uppgiften har behörighet att ange följande variabler: PATH, JAVA_HOME* |
Agentversion | 2.182.1 eller senare |
Aktivitetskategori | Verktyg |