JavaToolInstaller@0 — zadanie instalatora narzędzi Java w wersji 0

Użyj tego zadania, aby uzyskać określoną wersję języka Java z dostarczonego przez użytkownika obiektu blob platformy Azure lub pamięci podręcznej narzędzi i ustaw wartość JAVA_HOME.

Składnia

# 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.

Dane wejściowe

versionSpec - Wersja zestawu JDK
string. Wymagane. Wartość domyślna: 8.

Określa wersję zestawu JDK, która ma być dostępna w ścieżce. Użyj wersji liczb całkowitej, takiej jak 10.


jdkArchitectureOption - Architektura zestawu JDK
string. Wymagane. Dozwolone wartości: x64, x86.

Określa architekturę (x86, x64) zestawu JDK.


jdkSourceOption - Źródło zestawu JDK
string. Wymagane. Dozwolone wartości: AzureStorage (Azure Storage), LocalDirectory (Katalog lokalny), PreInstalled (wstępnie zainstalowane).

Określa źródło skompresowanego zestawu JDK. Źródłem może być usługa Azure Blob Storage lub katalog lokalny w agencie lub repozytorium źródłowym albo można użyć wstępnie zainstalowanej wersji języka Java (dostępnej dla agentów hostowanych przez firmę Microsoft). Zapoznaj się z poniższym przykładem dotyczącym używania wstępnie zainstalowanej wersji języka Java.


jdkSourceOption - Źródło zestawu JDK
string. Wymagane. Dozwolone wartości: AzureStorage (Azure Storage), LocalDirectory (Katalog lokalny).

Określa źródło skompresowanego zestawu JDK. Źródłem może być usługa Azure Blob Storage lub katalog lokalny w agencie lub repozytorium źródłowym albo można użyć wstępnie zainstalowanej wersji języka Java (dostępnej dla agentów hostowanych przez firmę Microsoft). Zapoznaj się z poniższym przykładem dotyczącym używania wstępnie zainstalowanej wersji języka Java.


jdkFile - Plik JDK
string. Wymagane, gdy jdkSourceOption == LocalDirectory.

Określa ścieżkę do pliku archiwum JDK zawierającego skompresowany zestaw JDK. Ścieżka może znajdować się w repozytorium źródłowym lub w ścieżce lokalnej agenta. Plik powinien być archiwum (.zip, tar.gz, .7z) zawierający folder bin na poziomie głównym lub wewnątrz jednego katalogu. System MacOS obsługuje pliki pkg i dmg zawierające tylko jeden plik pkg wewnątrz.


azureResourceManagerEndpoint - Subskrypcja platformy Azure
string. Wymagane, gdy jdkSourceOption == AzureStorage.

Określa subskrypcję zestawu JDK platformy Azure Resource Manager.


azureStorageAccountName - Nazwa konta magazynu
string. Wymagane, gdy jdkSourceOption == AzureStorage.

Określa klasyczne lub Resource Manager konta magazynu platformy Azure. Wybierz nazwę konta magazynu, w którym znajduje się zestaw JDK.


azureContainerName - Nazwa kontenera
string. Wymagane, gdy jdkSourceOption == AzureStorage.

Określa nazwę kontenera na koncie magazynu, na którym znajduje się zestaw JDK.


azureCommonVirtualFile - Wspólna ścieżka wirtualna
string. Wymagane, gdy jdkSourceOption == AzureStorage.

Określa ścieżkę do zestawu JDK wewnątrz kontenera usługi Azure Storage.


jdkDestinationDirectory - Katalog docelowy
string. Wymagane, gdy jdkSourceOption != PreInstalled.

Określa katalog docelowy, w którym ma zostać wyodrębniony zestaw JDK. W systemach Linux i Windows jest to używane jako katalog docelowy instalacji zestawu JDK. W systemie macOS ten katalog jest używany jako folder tymczasowy do wyodrębniania plików dmg, ponieważ system macOS nie obsługuje instalowania zestawu JDK do określonego katalogu.


jdkDestinationDirectory - Katalog docelowy
string. Wymagane.

Określa katalog docelowy, w którym ma zostać wyodrębniony zestaw JDK. W systemach Linux i Windows jest to używane jako katalog docelowy instalacji zestawu JDK. W systemie macOS ten katalog jest używany jako folder tymczasowy do wyodrębniania plików dmg, ponieważ system macOS nie obsługuje instalowania zestawu JDK do określonego katalogu.


azureResourceGroupName - Nazwa grupy zasobów
string. Opcjonalny. Użyj polecenia , gdy jdkSourceOption == AzureStorage.

Nazwa grupy zasobów konta magazynu.


cleanDestinationDirectory - Wyczyść katalog docelowy
boolean. Opcjonalny. Użyj polecenia , gdy jdkSourceOption != PreInstalled. Wartość domyślna: true.

Określa opcję czyszczenia katalogu docelowego przed wyodrębnieniem do niego zestawu JDK.


cleanDestinationDirectory - Wyczyść katalog docelowy
boolean. Wartość domyślna: true.

Określa opcję czyszczenia katalogu docelowego przed wyodrębnieniem do niego zestawu JDK.


createExtractDirectory - Tworzenie katalogu do wyodrębniania
boolean. Opcjonalny. Użyj polecenia , gdy jdkSourceOption != PreInstalled. Wartość domyślna: true.

Domyślnie zadanie tworzy katalog podobny do JAVA_HOME_8_X64_OpenJDK_zip wyodrębniania zestawu JDK. Ta opcja wyłącza tworzenie tego folderu, a jeśli ustawiono wartość false, zestaw JDK znajduje się w katalogu głównym jdkDestinationDirectory zamiast tego.


Opcje sterowania zadania

Wszystkie zadania mają opcje sterowania oprócz danych wejściowych zadań. Aby uzyskać więcej informacji, zobacz Opcje sterowania i typowe właściwości zadań.

Zmienne wyjściowe

Brak.

Uwagi

To zadanie służy do uzyskiwania określonej wersji języka Java z dostarczonego przez użytkownika obiektu blob platformy Azure, lokalizacji w źródle lub agenta albo pamięci podręcznej narzędzi. Zadanie ustawia również zmienną środowiskową JAVA_HOME . Użyj tego zadania, aby zmienić wersję języka Java używaną w zadaniach Java.

Uwaga

Aby uruchomić zadanie Instalatora narzędzi Java w systemie macOS, jest wymagane dla użytkownika, w ramach którego agent jest uruchomiony, aby mieć uprawnienia do wykonywania polecenia sudo bez hasła. Aby włączyć to uprawnienie, możesz wykonać następujące kroki:

  1. Uruchom polecenie sudo visudo . Plik sudoers zostanie otwarty do edycji.
  2. Przejdź do dołu pliku i dodaj następujący wiersz: user ALL=NOPASSWD: /usr/sbin/installer (Zastąp użytkownika rzeczywistym aliasem użytkownika).
  3. Zapisz i zamknij plik.

Przykłady

Oto przykład pobierania pliku archiwum z katalogu lokalnego w systemie Linux. Plik powinien być archiwum (.zip, .gz) JAVA_HOME katalogu, więc zawiera binkatalogi , lib, include, jreitp.

  - 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

Oto przykład pobierania pliku archiwum z usługi Azure Storage. Plik powinien być archiwum (.zip, .gz) JAVA_HOME katalogu, więc zawiera binkatalogi , lib, include, jreitp.

- 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

Oto przykład użycia funkcji "wstępnie zainstalowanej". Ta funkcja umożliwia korzystanie ze wstępnie zainstalowanych wersji języka Java w agencie hostowanym przez firmę Microsoft. Dostępne wstępnie zainstalowane wersje języka Java można znaleźć w kolumnie dołączonego oprogramowania w tabeli hostowanych agentów.

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

Wymagania

Wymaganie Opis
Typy potoków YAML, klasyczna kompilacja, wersja klasyczna
Działa w Agent, DeploymentGroup
Wymagania Brak
Możliwości Uruchomienie tego zadania spełnia następujące wymagania dotyczące wszystkich kolejnych zadań w tym samym zadaniu: Java, JDK
Ograniczenia poleceń To zadanie jest uruchamiane przy użyciu następujących ograniczeń poleceń: ograniczone
Zmienne ustawialne To zadanie ma uprawnienia do ustawiania następujących zmiennych: PATH, JAVA_HOME*
Wersja agenta 2.182.1 lub nowsza
Kategoria zadania Narzędzie
Wymaganie Opis
Typy potoków YAML, klasyczna kompilacja, wersja klasyczna
Działa w Agent, DeploymentGroup
Wymagania Brak
Możliwości Uruchomienie tego zadania spełnia następujące wymagania dotyczące wszystkich kolejnych zadań w tym samym zadaniu: Java, JDK
Ograniczenia poleceń Dowolne
Zmienne ustawialne Dowolne
Wersja agenta Wszystkie obsługiwane wersje agenta.
Kategoria zadania Narzędzie
Wymaganie Opis
Typy potoków YAML, klasyczna kompilacja, wersja klasyczna
Działa w Agent, DeploymentGroup
Wymagania Brak
Możliwości Uruchomienie tego zadania spełnia następujące wymagania dotyczące wszystkich kolejnych zadań w tym samym zadaniu: Java
Ograniczenia poleceń Dowolne
Zmienne ustawialne Dowolne
Wersja agenta Wszystkie obsługiwane wersje agenta.
Kategoria zadania Narzędzie

Zobacz też

Aby zapoznać się z wyjaśnieniem instalatorów narzędzi i przykładów, zobacz Instalatory narzędzi.