JavaToolInstaller@0 - Java ツール インストーラー v0 タスク

このタスクを使用して、ユーザー指定の Azure BLOB またはツール キャッシュから特定のバージョンの Java を取得し、 を設定 JAVA_HOMEします。

構文

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

入力

versionSpec - JDK バージョン
string. 必須です。 既定値: 8

パスで使用できるようにする JDK バージョンを指定します。 整数バージョン (10 など) を使用します。


jdkArchitectureOption - JDK アーキテクチャ
string. 必須です。 使用できる値: x64x86

JDK のアーキテクチャ (x86x64) を指定します。


jdkSourceOption - JDK ソース
string. 必須です。 使用できる値: AzureStorage (Azure Storage)、 LocalDirectory (ローカル ディレクトリ)、 PreInstalled (プレインストール)。

圧縮 JDK のソースを指定します。 ソースには、エージェントまたはソース リポジトリ上の Azure BLOB ストレージまたはローカル ディレクトリを指定するか、事前にインストールされたバージョンの Java (Microsoft ホステッド エージェントで使用可能) を使用できます。 事前インストールされたバージョンの Java の使用方法については、以下の例を参照してください。


jdkSourceOption - JDK ソース
string. 必須です。 使用できる値: AzureStorage (Azure Storage)、 LocalDirectory (ローカル ディレクトリ)。

圧縮 JDK のソースを指定します。 ソースには、エージェントまたはソース リポジトリ上の Azure BLOB ストレージまたはローカル ディレクトリを指定するか、事前にインストールされたバージョンの Java (Microsoft ホステッド エージェントで使用可能) を使用できます。 事前インストールされたバージョンの Java の使用方法については、以下の例を参照してください。


jdkFile - JDK ファイル
string. jdkSourceOption == LocalDirectory の場合に必要です。

圧縮された JDK を含む JDK アーカイブ ファイルへのパスを指定します。 パスは、ソース リポジトリ内にあるか、エージェント上のローカル パスである可能性があります。 ファイルは、ルート レベルまたは単一ディレクトリ内の bin フォルダーを含むアーカイブ (.zip、.tar.gz、.7z) である必要があります。 MacOS では、内部に 1 つの .pkg ファイルのみを含む .pkg ファイルと .dmg ファイルがサポートされています。


azureResourceManagerEndpoint - Azure サブスクリプション
string. jdkSourceOption == AzureStorage の場合に必要です。

JDK の Azure Resource Manager サブスクリプションを指定します。


azureStorageAccountName - ストレージ アカウント名
string. jdkSourceOption == AzureStorage の場合に必要です。

Azure クラシック または Resource Manager ストレージ アカウントを指定します。 JDK が配置されているストレージ アカウント名を選択します。


azureContainerName - コンテナー名
string. jdkSourceOption == AzureStorage の場合に必要です。

JDK が配置されているストレージ アカウント内のコンテナーの名前を指定します。


azureCommonVirtualFile - 共通仮想パス
string. jdkSourceOption == AzureStorage の場合に必要です。

Azure ストレージ コンテナー内の JDK へのパスを指定します。


jdkDestinationDirectory - 宛先ディレクトリ
string. jdkSourceOption != PreInstalled の場合に必要です。

JDK を抽出する宛先ディレクトリを指定します。 Linux および Windows では、これは JDK インストールの宛先ディレクトリとして使用されます。 macOS では、macOS では特定のディレクトリへの JDK のインストールがサポートされていないため、このディレクトリは .dmg を抽出するための一時フォルダーとして使用されます。


jdkDestinationDirectory - 宛先ディレクトリ
string. 必須です。

JDK を抽出する宛先ディレクトリを指定します。 Linux および Windows では、これは JDK インストールの宛先ディレクトリとして使用されます。 macOS では、macOS では特定のディレクトリへの JDK のインストールがサポートされていないため、このディレクトリは .dmg を抽出するための一時フォルダーとして使用されます。


azureResourceGroupName - リソース グループ名
string. 省略可能。 の場合は jdkSourceOption == AzureStorageを使用します。

ストレージ アカウントのリソース グループ名。


cleanDestinationDirectory - コピー先ディレクトリをクリーンする
boolean. 省略可能。 の場合は jdkSourceOption != PreInstalledを使用します。 既定値: true

JDK が抽出される前に宛先ディレクトリをクリーンするオプションを指定します。


cleanDestinationDirectory - コピー先ディレクトリをクリーンする
boolean. 既定値: true

JDK が抽出される前に宛先ディレクトリをクリーンするオプションを指定します。


createExtractDirectory - 抽出用のディレクトリを作成する
boolean. 省略可能。 の場合は jdkSourceOption != PreInstalledを使用します。 既定値: true

既定では、タスクは JDK を抽出するための と同様の JAVA_HOME_8_X64_OpenJDK_zip ディレクトリを作成します。 このオプションを選択すると、そのフォルダーの作成が無効になり、 が に false設定されている場合、JDK は 代わりに の jdkDestinationDirectory ルートに配置されます。


タスク制御オプション

すべてのタスクには、タスク入力に加えて制御オプションがあります。 詳細については、「 コントロール オプションと一般的なタスク プロパティ」を参照してください。

出力変数

[なし] :

解説

このタスクを使用して、ユーザーが指定した Azure BLOB、ソースまたはエージェント上の場所、またはツール キャッシュから特定のバージョンの Java を取得します。 タスクでは、環境変数も設定されます JAVA_HOME 。 このタスクを使用して、Java タスクで使用される Java のバージョンを変更します。

Note

macOS で Java ツール インストーラー タスクを実行するには、エージェントが実行されているユーザーがパスワードなしで sudo コマンドを実行するアクセス許可を持っている必要があります。 次の手順に従って、このアクセス許可を有効にすることができます。

  1. sudo visudo コマンドを実行します。 sudoers ファイルが開き、編集が行われます。
  2. ファイルの一番下に移動し、次の行を追加します user ALL=NOPASSWD: /usr/sbin/installer (user を実際のユーザー エイリアスに置き換えます)。
  3. ファイルを保存して閉じます。

Linux 上のローカル ディレクトリからアーカイブ ファイルを取得する例を次に示します。 ファイルは、ディレクトリのアーカイブ (.zip、.gz) JAVA_HOME である必要があるため、、libincludejreなどのディレクトリがbin含まれます。

  - 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

Azure Storage からアーカイブ ファイルをダウンロードする例を次に示します。 ファイルは、ディレクトリのアーカイブ (.zip、.gz) JAVA_HOME である必要があるため、、libincludejreなどのディレクトリがbin含まれます。

- 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

"プレインストール" 機能を使用する例を次に示します。 この機能を使用すると、Microsoft ホステッド エージェントにプレインストールされている Java バージョンを使用できます。 使用可能なプレインストールバージョンの Java は、 ホストされているエージェントの表の含まれているソフトウェア列にあります

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

必要条件

要件 説明
パイプラインの種類 YAML、クラシック ビルド、クラシック リリース
実行日 エージェント、DeploymentGroup
確認要求 なし
Capabilities このタスクの実行は、同じジョブ内の後続のタスクに対して次の 要求 を満たします: Java、JDK
コマンドの制限 このタスクは、次の コマンド制限を使用して実行されます。
設定可能な変数 このタスクには、PATH、JAVA_HOME* という 変数を設定するアクセス許可があります。
エージェントのバージョン 2.182.1 以上
タスクのカテゴリ ツール
要件 説明
パイプラインの種類 YAML、クラシック ビルド、クラシック リリース
実行日 エージェント、DeploymentGroup
確認要求 なし
Capabilities このタスクの実行は、同じジョブ内の後続のタスクに対して次の 要求 を満たします: Java、JDK
コマンドの制限 Any
設定可能な変数 Any
エージェントのバージョン サポートされているすべてのエージェント バージョン。
タスクのカテゴリ ツール
要件 説明
パイプラインの種類 YAML、クラシック ビルド、クラシック リリース
実行日 エージェント、DeploymentGroup
確認要求 なし
Capabilities このタスクの実行は、同じジョブ内の後続のタスクに対して次の 要求 を満たします。
コマンドの制限 Any
設定可能な変数 Any
エージェントのバージョン サポートされているすべてのエージェント バージョン。
タスクのカテゴリ ツール

関連項目

ツール インストーラーの説明と例については、ツール インストーラーに関するページを参照してください。