JavaToolInstaller@1: tarea del instalador de herramientas de Java v1
Adquiera una versión específica de Java de un blob de Azure proporcionado por el usuario o la caché de herramientas y establezca JAVA_HOME.
Sintaxis
# 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.
Entradas
de la versión de JDK de
string
. Obligatorio. Valor predeterminado: 8
.
Especifica la versión de JDK que se va a poner a disposición en la ruta de acceso. Use una versión de número entero, como 10.
de arquitectura de JDK de
string
. Obligatorio. Valores permitidos: x64
, x86
.
Especifica la arquitectura (x86
, x64
) del JDK.
de origen de JDK de
string
. Obligatorio. Valores permitidos: AzureStorage
(Azure Storage), LocalDirectory
(Directorio local), PreInstalled
(preinstalado).
Especifica el origen del JDK comprimido. El origen puede ser Azure Blob Storage o un directorio local en el agente o el repositorio de origen, o bien puede usar la versión preinstalada de Java (disponible para agentes hospedados por Microsoft). Consulte el ejemplo siguiente sobre cómo usar la versión preinstalada de Java.
Nota
Esta versión de la tarea accede a Azure Storage mediante una conexión de servicio de Azure Resource Manager configurada mediante la federación de identidades de carga de trabajo y Azure RBAC. Para más información, consulte Asignación de un rol de Azure para el acceso a datos de blobs.
de archivos JDK de
string
. Obligatorio cuando jdkSourceOption == LocalDirectory
.
Especifica la ruta de acceso al archivo de archivo JDK que contiene el JDK comprimido. La ruta de acceso podría estar en el repositorio de origen o en una ruta de acceso local en el agente. El archivo debe ser un archivo (.zip, .tar.gz, .7z) que contiene la carpeta bin en el nivel raíz o dentro de un único directorio. MacOS admite archivos .pkg y .dmg que contienen solo un archivo .pkg dentro.
azureResourceManagerEndpoint
-
de suscripción de Azure
string
. Obligatorio cuando jdkSourceOption == AzureStorage
.
Especifica la suscripción de Azure Resource Manager para el JDK.
azureStorageAccountName
-
nombre de la cuenta de almacenamiento
string
. Obligatorio cuando jdkSourceOption == AzureStorage
.
Especifica las cuentas de almacenamiento de Azure Clásico o Resource Manager. Seleccione el nombre de la cuenta de almacenamiento en la que se encuentra el JDK.
string
. Obligatorio cuando jdkSourceOption == AzureStorage
.
Especifica el nombre del contenedor en la cuenta de almacenamiento donde se encuentra el JDK.
azureCommonVirtualFile
-
ruta de acceso virtual común
string
. Obligatorio cuando jdkSourceOption == AzureStorage
.
Especifica la ruta de acceso al JDK dentro del contenedor de Azure Storage.
de directorio de destino de
string
. Obligatorio cuando jdkSourceOption != PreInstalled
.
Especifica el directorio de destino donde se debe extraer el JDK. En Linux y Windows, se usa como directorio de destino para la instalación de JDK. En macOS, este directorio se usa como carpeta temporal para extraer .dmg porque macOS no admite la instalación de JDK en un directorio específico.
azureResourceGroupName
-
nombre del grupo de recursos
string
. Opcional. Use cuando jdkSourceOption == AzureStorage
.
Nombre del grupo de recursos de la cuenta de almacenamiento.
cleanDestinationDirectory
-
limpiar directorio de destino
boolean
. Opcional. Use cuando jdkSourceOption != PreInstalled
. Valor predeterminado: true
.
Especifica la opción de limpiar el directorio de destino antes de que JDK se extraiga en él.
createExtractDirectory
-
Crear directorio para extraer
boolean
. Opcional. Use cuando jdkSourceOption != PreInstalled
. Valor predeterminado: true
.
De forma predeterminada, la tarea crea un directorio similar a JAVA_HOME_8_X64_OpenJDK_zip
para extraer JDK. Esta opción deshabilita la creación de esa carpeta y, si se establece en false
, JDK se encuentra en la raíz de jdkDestinationDirectory
en su lugar.
Opciones de control de tareas
Todas las tareas tienen opciones de control además de sus entradas de tarea. Para obtener más información, consulte Opciones de control y propiedades de tareas comunes.
Variables de salida
Ninguno.
Observaciones
Use esta tarea para adquirir una versión específica de Java de un blob de Azure proporcionado por el usuario, una ubicación en el origen o en el agente, o la caché de herramientas. La tarea también establece la variable de entorno JAVA_HOME
.
Use esta tarea para cambiar la versión de Java que se usa en las tareas de Java.
Nota
Para ejecutar la tarea instalador de herramientas de Java en macOS, es necesario que el usuario con el que se ejecute el agente tenga permiso para ejecutar el comando sudo sin contraseña. Puede seguir los pasos siguientes para habilitar este permiso:
- Ejecute el comando sudo visudo. Se abre el archivo sudoers para su edición.
- Vaya a la parte inferior del archivo y agregue la siguiente línea:
user ALL=NOPASSWD: /usr/sbin/installer
(reemplace el usuario por el alias de usuario real).- Guarde y cierre el archivo.
Ejemplos
Este es un ejemplo de cómo obtener el archivo de archivo de un directorio local en Linux. El archivo debe ser un archivo (.zip, .gz) del directorio JAVA_HOME
, por lo que incluye los directorios bin
, lib
, include
, jre
, etc.
- 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
Este es un ejemplo de descarga del archivo de Azure Storage.
El archivo debe ser un archivo (.zip, .gz) del directorio JAVA_HOME
, por lo que incluye los directorios bin
, lib
, include
, jre
, etc.
Nota
Esta versión de la tarea accede a Azure Storage mediante una conexión de servicio de Azure Resource Manager configurada mediante la federación de identidades de carga de trabajo y Azure RBAC. Para más información, consulte Asignación de un rol de Azure para el acceso a datos de blobs.
- 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
Este es un ejemplo del uso de la característica "preinstalada". Esta característica permite usar versiones de Java preinstaladas en el agente hospedado por Microsoft. Puede encontrar las versiones preinstaladas disponibles de Java en la columna de software incluida en la tabla de agentes hospedados.
- task: JavaToolInstaller@1
inputs:
versionSpec: '8'
jdkArchitectureOption: 'x64'
jdkSourceOption: 'PreInstalled'
Requisitos
Requisito | Descripción |
---|---|
Tipos de canalización | YAML, compilación clásica, versión clásica |
Se ejecuta en | Agente, DeploymentGroup |
demandas | Ninguno |
funcionalidades de |
La ejecución de esta tarea satisface las siguientes demandas para las tareas posteriores del mismo trabajo: Java, JDK |
restricciones de comandos | Esta tarea se ejecuta con las restricciones de comandos siguientes: restringido |
variables settable | Esta tarea tiene permiso para establecer las siguientes variables: PATH, JAVA_HOME* |
Versión del agente | 2.182.1 o superior |
Categoría de tarea | Herramienta |