JavaToolInstaller@0 — задача установщика средств Java версии 0
Используйте эту задачу, чтобы получить определенную версию Java из предоставленного пользователем большого двоичного объекта Azure или кэша инструментов и задать .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
. Обязательный. Допустимые значения: x64
, x86
.
Задает архитектуру (x86
, x64
) JDK.
jdkSourceOption
- Источник JDK
string
. Обязательный. Допустимые значения: AzureStorage
(служба хранилища Azure), LocalDirectory
(локальный каталог), PreInstalled
(предварительно установленная версия).
Указывает источник для сжатого пакета JDK. Источником может быть хранилище BLOB-объектов Azure или локальный каталог в агенте или исходном репозитории. Также можно использовать предварительно установленную версию Java (доступна для агентов, размещенных в Майкрософт). См. приведенный ниже пример использования предварительно установленной версии Java.
jdkSourceOption
- Источник JDK
string
. Обязательный. Допустимые значения: AzureStorage
(служба хранилища Azure), LocalDirectory
(локальный каталог).
Указывает источник для сжатого пакета JDK. Источником может быть хранилище BLOB-объектов Azure или локальный каталог в агенте или исходном репозитории. Также можно использовать предварительно установленную версию Java (доступна для агентов, размещенных в Майкрософт). См. приведенный ниже пример использования предварительно установленной версии Java.
jdkFile
- JDK-файл
string
. Требуется, если jdkSourceOption == LocalDirectory
.
Указывает путь к файлу архива JDK, который содержит сжатый пакет JDK. Путь может находиться в исходном репозитории или локальном пути в агенте. Файл должен быть архивом (.zip, .tar.gz, .7z), содержащим папку bin на корневом уровне или в одном каталоге. MacOS поддерживает PKG- и DMG-файлы, содержащие только один PKG-файл внутри.
azureResourceManagerEndpoint
- Подписка Azure
string
. Требуется, если jdkSourceOption == AzureStorage
.
Указывает подписку azure Resource Manager для JDK.
azureStorageAccountName
- Имя учетной записи хранения
string
. Требуется, если jdkSourceOption == AzureStorage
.
Указывает классическую или Resource Manager учетную запись хранения Azure. Выберите имя учетной записи хранения, в которой находится JDK.
azureContainerName
- Имя контейнера
string
. Требуется, если jdkSourceOption == AzureStorage
.
Указывает имя контейнера в учетной записи хранения, где находится JDK.
azureCommonVirtualFile
- Общий виртуальный путь
string
. Требуется, если jdkSourceOption == AzureStorage
.
Указывает путь к JDK в контейнере службы хранилища Azure.
jdkDestinationDirectory
- Целевой каталог
string
. Требуется, если jdkSourceOption != PreInstalled
.
Указывает целевой каталог, в который следует извлечь JDK. В Linux и Windows этот каталог используется в качестве целевого каталога для установки JDK. В macOS этот каталог используется как временная папка для извлечения DMG-файлов, так как macOS не поддерживает установку JDK в определенный каталог.
jdkDestinationDirectory
- Целевой каталог
string
. Обязательный.
Указывает целевой каталог, в который следует извлечь JDK. В Linux и Windows этот каталог используется в качестве целевого каталога для установки JDK. В macOS этот каталог используется как временная папка для извлечения DMG-файлов, так как macOS не поддерживает установку JDK в определенный каталог.
azureResourceGroupName
- Имя группы ресурсов
string
. Необязательный элемент. Используйте при jdkSourceOption == AzureStorage
.
Имя группы ресурсов учетной записи хранения.
cleanDestinationDirectory
- Очистка целевого каталога
boolean
. Необязательный элемент. Используйте при jdkSourceOption != PreInstalled
. Значение по умолчанию: true
.
Указывает параметр очистки целевого каталога перед извлечением в него JDK.
cleanDestinationDirectory
- Очистка целевого каталога
boolean
. Значение по умолчанию: true
.
Указывает параметр очистки целевого каталога перед извлечением в него JDK.
createExtractDirectory
- Создание каталога для извлечения
boolean
. Необязательный элемент. Используйте при jdkSourceOption != PreInstalled
. Значение по умолчанию: true
.
По умолчанию задача создает каталог, аналогичный JAVA_HOME_8_X64_OpenJDK_zip
для извлечения JDK. Этот параметр отключает создание этой папки и, если задано значение false
, JDK находится в корневом каталоге jdkDestinationDirectory
.
Параметры управления задачами
Помимо входных данных, все задачи имеют параметры управления. Дополнительные сведения см. в разделе Параметры управления и общие свойства задачи.
Выходные переменные
Нет.
Remarks
Используйте эту задачу, чтобы получить определенную версию Java из предоставленного пользователем большого двоичного объекта Azure, расположения в источнике или в агенте, а также из кэша инструментов. Задача также задает JAVA_HOME
переменную среды.
Используйте эту задачу, чтобы изменить версию Java, используемую в задачах Java.
Примечание
Чтобы запустить задачу установщика инструментов Java в macOS, пользователю, от имени которого выполняется агент, требуется разрешение на выполнение команды sudo без пароля. Чтобы включить это разрешение, выполните следующие действия:
- Выполните команду sudo visudo . Откроется файл sudoers для редактирования.
- Перейдите в нижнюю часть файла и добавьте следующую строку:
user ALL=NOPASSWD: /usr/sbin/installer
(Замените пользователя фактическим псевдонимом пользователя).- Сохраните файл и закройте его.
Примеры
Ниже приведен пример получения архивного файла из локального каталога в Linux. Файл должен быть архивом (.zip, .gz) JAVA_HOME
каталога, поэтому он включает bin
каталоги , lib
, include
, jre
и т. д.
- 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.
Файл должен быть архивом (.zip, .gz) JAVA_HOME
каталога, поэтому он включает bin
каталоги , lib
, include
, jre
и т. д.
- 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
Ниже приведен пример использования предварительно установленной функции. Эта функция позволяет использовать версии Java, которые предварительно установлены на агенте, размещенном в Майкрософт. Доступные предварительно установленные версии Java можно найти в столбце включенного программного обеспечения в таблице размещенных агентов.
- task: JavaToolInstaller@0
inputs:
versionSpec: '8'
jdkArchitectureOption: 'x64'
jdkSourceOption: 'PreInstalled'
Требования
Требование | Описание |
---|---|
Типы конвейеров | YAML, классическая сборка, классический выпуск |
Выполняется в | Агент, DeploymentGroup |
Требования | Нет |
Capabilities | Выполнение этой задачи удовлетворяет следующим требованиям для всех последующих задач в том же задании: Java, JDK |
Ограничения команд | Эта задача выполняется с использованием следующих ограничений команд: restricted |
Устанавливаемые переменные | Эта задача имеет разрешение на задание следующих переменных: PATH, JAVA_HOME* |
Версия агента | 2.182.1 или более поздней версии |
Категория задач | Инструмент |
Требование | Описание |
---|---|
Типы конвейеров | YAML, классическая сборка, классический выпуск |
Выполняется в | Агент, DeploymentGroup |
Требования | Нет |
Capabilities | Выполнение этой задачи удовлетворяет следующим требованиям для всех последующих задач в том же задании: Java, JDK |
Ограничения команд | Любой |
Устанавливаемые переменные | Любой |
Версия агента | Все поддерживаемые версии агента. |
Категория задач | Инструмент |
Требование | Описание |
---|---|
Типы конвейеров | YAML, классическая сборка, классический выпуск |
Выполняется в | Агент, DeploymentGroup |
Требования | Нет |
Capabilities | Выполнение этой задачи удовлетворяет следующим требованиям для всех последующих задач в том же задании: Java |
Ограничения команд | Любой |
Устанавливаемые переменные | Любой |
Версия агента | Все поддерживаемые версии агента. |
Категория задач | Инструмент |
См. также раздел
Описание установщиков инструментов и примеры см. в разделе Установщики инструментов.