Sdílet prostřednictvím


JavaToolInstaller@0 – úloha instalačního programu nástroje Java v0

Pomocí této úlohy můžete získat konkrétní verzi Javy z uživatelem dodaného objektu blob Azure nebo mezipaměti nástrojů a nastavit 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.

Vstupy

verze sady JDK
string. Požadovaný. Výchozí hodnota: 8.

Určuje verzi sady JDK, která se má zpřístupnit v cestě. Použijte celou číselnou verzi, například 10.


architektury sady JDK
string. Požadovaný. Povolené hodnoty: x64, x86.

Určuje architekturu (x86, x64) sady JDK.


zdrojová sady JDK
string. Požadovaný. Povolené hodnoty: AzureStorage (Azure Storage), LocalDirectory (místní adresář), PreInstalled (předinstalované).

Určuje zdroj pro komprimovanou sadu JDK. Zdrojem může být Azure Blob Storage nebo místní adresář v agentu nebo zdrojovém úložišti nebo můžete použít předinstalovanou verzi Javy (k dispozici pro agenty hostované Microsoftem). V následujícím příkladu se dozvíte, jak používat předinstalovanou verzi Javy.


zdrojová sady JDK
string. Požadovaný. Povolené hodnoty: AzureStorage (Azure Storage), LocalDirectory (místní adresář).

Určuje zdroj pro komprimovanou sadu JDK. Zdrojem může být Azure Blob Storage nebo místní adresář v agentu nebo zdrojovém úložišti nebo můžete použít předinstalovanou verzi Javy (k dispozici pro agenty hostované Microsoftem). V následujícím příkladu se dozvíte, jak používat předinstalovanou verzi Javy.


souboru JDK
string. Požadováno při jdkSourceOption == LocalDirectory.

Určuje cestu k souboru archivu sady JDK, který obsahuje komprimovanou sadu JDK. Cesta může být ve zdrojovém úložišti nebo v místní cestě agenta. Soubor by měl být archiv (.zip, .tar.gz, .7z) obsahující složku bin na kořenové úrovni nebo v jednom adresáři. MacOS podporuje .pkg a .dmg soubory obsahující pouze jeden soubor .pkg uvnitř.


azureResourceManagerEndpoint - předplatného Azure
string. Požadováno při jdkSourceOption == AzureStorage.

Určuje předplatné Azure Resource Manageru pro sadu JDK.


azureStorageAccountName - název účtu úložiště
string. Požadováno při jdkSourceOption == AzureStorage.

Určuje účty úložiště Azure Classic nebo Resource Manager. Vyberte název účtu úložiště, ve kterém se nachází sada JDK.


azureContainerName - název kontejneru
string. Požadováno při jdkSourceOption == AzureStorage.

Určuje název kontejneru v účtu úložiště, kde se nachází sada JDK.


azureCommonVirtualFile - běžná virtuální cesta
string. Požadováno při jdkSourceOption == AzureStorage.

Určuje cestu k JDK uvnitř kontejneru úložiště Azure.


cílového adresáře
string. Požadováno při jdkSourceOption != PreInstalled.

Určuje cílový adresář, do kterého se má sada JDK extrahovat. V Linuxu a Windows se používá jako cílový adresář pro instalaci sady JDK. V systému macOS se tento adresář používá jako dočasná složka pro extrahování .dmg, protože macOS nepodporuje instalaci sady JDK do konkrétního adresáře.


cílového adresáře
string. Požadovaný.

Určuje cílový adresář, do kterého se má sada JDK extrahovat. V Linuxu a Windows se používá jako cílový adresář pro instalaci sady JDK. V systému macOS se tento adresář používá jako dočasná složka pro extrahování .dmg, protože macOS nepodporuje instalaci sady JDK do konkrétního adresáře.


název skupiny prostředků azureResourceGroupName -
string. Volitelný. Používá se při jdkSourceOption == AzureStorage.

Název skupiny prostředků účtu úložiště


cleanDestinationDirectory - Vyčištění cílového adresáře
boolean. Volitelný. Používá se při jdkSourceOption != PreInstalled. Výchozí hodnota: true.

Určuje možnost vyčištění cílového adresáře před extrahováním sady JDK do cílového adresáře.


cleanDestinationDirectory - Vyčištění cílového adresáře
boolean. Výchozí hodnota: true.

Určuje možnost vyčištění cílového adresáře před extrahováním sady JDK do cílového adresáře.


createExtractDirectory - Vytvoření adresáře pro extrakci
boolean. Volitelný. Používá se při jdkSourceOption != PreInstalled. Výchozí hodnota: true.

Ve výchozím nastavení úloha vytvoří adresář podobný JAVA_HOME_8_X64_OpenJDK_zip pro extrahování sady JDK. Tato možnost zakáže vytvoření této složky a pokud je nastavena na false, sada JDK se nachází v kořenovém adresáři jdkDestinationDirectory.


Možnosti řízení úkolů

Všechny úkoly mají kromě vstupů úkolů také možnosti řízení. Další informace naleznete v tématu Možnosti ovládacího prvku a běžné vlastnosti úloh.

Výstupní proměnné

Žádný.

Poznámky

Pomocí této úlohy můžete získat konkrétní verzi Javy z uživatelem dodaného objektu blob Azure, umístění ve zdroji nebo agenta nebo mezipaměti nástrojů. Úloha také nastaví proměnnou prostředí JAVA_HOME. Tuto úlohu použijte ke změně verze Javy používané v úlohách Javy.

Poznámka

Pokud chcete spustit úlohu instalačního programu nástroje Java Tool v systému macOS, musí mít uživatel, pod kterým agent běží, oprávnění ke spuštění příkazu sudo bez hesla. Pokud chcete povolit toto oprávnění, můžete postupovat podle dalších kroků:

  1. Spusťte příkaz sudo visudo. Soubor sudoers se otevře pro úpravy.
  2. Přejděte do dolní části souboru a přidejte následující řádek: user ALL=NOPASSWD: /usr/sbin/installer (nahraďte uživatele skutečným aliasem uživatele).
  3. Uložte a zavřete soubor.

Příklady

Tady je příklad získání souboru archivu z místního adresáře v Linuxu. Soubor by měl být archiv (.zip, .gz) JAVA_HOME adresáře, takže obsahuje adresáře bin, lib, include, jreatd.

  - 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

Tady je příklad stažení archivního souboru ze služby Azure Storage. Soubor by měl být archiv (.zip, .gz) JAVA_HOME adresáře, takže obsahuje adresáře bin, lib, include, jreatd.

- 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

Tady je příklad použití předinstalované funkce. Tato funkce umožňuje používat verze Javy, které jsou předinstalované v agentu hostovaném Microsoftem. Dostupné předinstalované verze Javy najdete v zahrnutého softwarového sloupce v tabulce hostovaných agentů.

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

Požadavky

Požadavek Popis
Typy kanálů YAML, klasické sestavení, klasická verze
Běží na Agent, DeploymentGroup
požadavky Žádný
možnosti Spuštění tohoto úkolu splňuje následující požadavky pro všechny následné úkoly ve stejné úloze: Java, JDK
omezení příkazů Tato úloha se spouští s následujícími omezeními příkazů : omezeno:
nastavitelné proměnné Tento úkol má oprávnění k nastavit následující proměnné: PATH, JAVA_HOME*
Verze agenta 2.182.1 nebo vyšší
Kategorie úkolu Nástroj
Požadavek Popis
Typy kanálů YAML, klasické sestavení, klasická verze
Běží na Agent, DeploymentGroup
požadavky Žádný
možnosti Spuštění tohoto úkolu splňuje následující požadavky pro všechny následné úkoly ve stejné úloze: Java, JDK
omezení příkazů Jakýkoliv
nastavitelné proměnné Jakýkoliv
Verze agenta Všechny podporované verze agenta.
Kategorie úkolu Nástroj
Požadavek Popis
Typy kanálů YAML, klasické sestavení, klasická verze
Běží na Agent, DeploymentGroup
požadavky Žádný
možnosti Spuštění tohoto úkolu splňuje následující požadavky požadavky pro všechny následné úkoly ve stejné úloze: Java
omezení příkazů Jakýkoliv
nastavitelné proměnné Jakýkoliv
Verze agenta Všechny podporované verze agenta.
Kategorie úkolu Nástroj

Viz také

Vysvětlení instalačních programů a příkladů nástrojů najdete v tématu Instalační programy nástrojů.