JavaToolInstaller@0 - Tugas v0 penginstal alat Java
Gunakan tugas ini untuk memperoleh versi Java tertentu dari blob Azure yang disediakan pengguna atau cache alat dan atur JAVA_HOME
.
Sintaks
# 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.
Input
versionSpec
- Versi JDK
string
. Wajib diisi. Nilai default: 8
.
Menentukan versi JDK untuk tersedia di jalur. Gunakan versi seluruh nomor, seperti 10.
jdkArchitectureOption
- Arsitektur JDK
string
. Wajib diisi. Nilai yang diizinkan: x64
, x86
.
Menentukan arsitektur (x86
, x64
) dari JDK.
jdkSourceOption
- Sumber JDK
string
. Wajib diisi. Nilai yang diizinkan: AzureStorage
(Azure Storage), LocalDirectory
(Direktori Lokal), PreInstalled
(Pra-instal).
Menentukan sumber untuk JDK terkompresi. Sumbernya dapat berupa penyimpanan blob Azure atau direktori lokal pada agen atau repositori sumber, atau Anda dapat menggunakan versi Java yang telah diinstal sebelumnya (tersedia untuk agen yang dihosting Microsoft). Silakan lihat contoh di bawah ini tentang cara menggunakan versi Java yang telah diinstal sebelumnya.
jdkSourceOption
- Sumber JDK
string
. Wajib diisi. Nilai yang diizinkan: AzureStorage
(Azure Storage), LocalDirectory
(Direktori Lokal).
Menentukan sumber untuk JDK terkompresi. Sumbernya dapat berupa penyimpanan blob Azure atau direktori lokal pada agen atau repositori sumber, atau Anda dapat menggunakan versi Java yang telah diinstal sebelumnya (tersedia untuk agen yang dihosting Microsoft). Silakan lihat contoh di bawah ini tentang cara menggunakan versi Java yang telah diinstal sebelumnya.
jdkFile
- File JDK
string
. Diperlukan saat jdkSourceOption == LocalDirectory
.
Menentukan jalur ke file arsip JDK yang berisi JDK terkompresi. Jalur dapat berada di repositori sumber Anda atau jalur lokal pada agen. File harus berupa arsip (.zip, .tar.gz, .7z) yang berisi folder bin pada tingkat akar atau di dalam satu direktori. MacOS mendukung file .pkg dan .dmg yang hanya berisi satu file .pkg di dalamnya.
azureResourceManagerEndpoint
- Langganan Azure
string
. Diperlukan saat jdkSourceOption == AzureStorage
.
Menentukan langganan Azure Resource Manager untuk JDK.
azureStorageAccountName
- Nama akun penyimpanan
string
. Diperlukan saat jdkSourceOption == AzureStorage
.
Menentukan akun penyimpanan Azure Classic atau Resource Manager. Pilih nama akun penyimpanan tempat JDK berada.
azureContainerName
- Nama kontainer
string
. Diperlukan saat jdkSourceOption == AzureStorage
.
Menentukan nama kontainer di akun penyimpanan tempat JDK berada.
azureCommonVirtualFile
- Jalur virtual umum
string
. Diperlukan saat jdkSourceOption == AzureStorage
.
Menentukan jalur ke JDK di dalam kontainer penyimpanan Azure.
jdkDestinationDirectory
- Direktori tujuan
string
. Diperlukan saat jdkSourceOption != PreInstalled
.
Menentukan direktori tujuan tempat JDK harus diekstrak. Di Linux dan Windows, ini digunakan sebagai direktori tujuan untuk penginstalan JDK. Di macOS, direktori ini digunakan sebagai folder sementara untuk mengekstrak .dmg karena macOS tidak mendukung penginstalan JDK ke direktori tertentu.
jdkDestinationDirectory
- Direktori tujuan
string
. Wajib diisi.
Menentukan direktori tujuan tempat JDK harus diekstrak. Di Linux dan Windows, ini digunakan sebagai direktori tujuan untuk penginstalan JDK. Di macOS, direktori ini digunakan sebagai folder sementara untuk mengekstrak .dmg karena macOS tidak mendukung penginstalan JDK ke direktori tertentu.
azureResourceGroupName
- Nama Grup Sumber Daya
string
. Opsional. Gunakan saat jdkSourceOption == AzureStorage
.
Nama Grup Sumber Daya akun penyimpanan.
cleanDestinationDirectory
- Bersihkan direktori tujuan
boolean
. Pilihan. Gunakan saat jdkSourceOption != PreInstalled
. Nilai default: true
.
Menentukan opsi untuk membersihkan direktori tujuan sebelum JDK diekstraksi ke dalamnya.
cleanDestinationDirectory
- Bersihkan direktori tujuan
boolean
. Nilai default: true
.
Menentukan opsi untuk membersihkan direktori tujuan sebelum JDK diekstraksi ke dalamnya.
createExtractDirectory
- Membuat direktori untuk mengekstrak
boolean
. Pilihan. Gunakan saat jdkSourceOption != PreInstalled
. Nilai default: true
.
Secara default, tugas membuat direktori yang mirip JAVA_HOME_8_X64_OpenJDK_zip
dengan untuk mengekstrak JDK. Opsi ini menonaktifkan pembuatan folder tersebut dan, jika diatur ke false
, JDK terletak di akar jdkDestinationDirectory
sebagai gantinya.
Opsi kontrol tugas
Semua tugas memiliki opsi kontrol selain input tugas mereka. Untuk informasi selengkapnya, lihat Opsi kontrol dan properti tugas umum.
Variabel output
Tidak ada.
Keterangan
Gunakan tugas ini untuk memperoleh versi Java tertentu dari blob Azure yang disediakan pengguna, lokasi di sumber atau di agen, atau cache alat. Tugas ini juga mengatur JAVA_HOME
variabel lingkungan.
Gunakan tugas ini untuk mengubah versi Java yang digunakan dalam tugas Java.
Catatan
Untuk menjalankan tugas Penginstal Alat Java di macOS, diperlukan bagi pengguna di mana agen berjalan untuk memiliki izin untuk menjalankan perintah sudo tanpa kata sandi. Anda dapat mengikuti langkah-langkah berikutnya untuk mengaktifkan izin ini:
- Jalankan perintah sudo visudo . File sudoers terbuka untuk pengeditan.
- Buka bagian bawah file dan tambahkan baris berikut:
user ALL=NOPASSWD: /usr/sbin/installer
(Ganti pengguna dengan alias pengguna yang sebenarnya).- Simpan dan tutup file.
Contoh
Berikut adalah contoh mendapatkan file arsip dari direktori lokal di Linux. File harus berupa arsip (.zip, .gz) JAVA_HOME
direktori, sehingga mencakup bin
direktori , , lib
include
, jre
, dll.
- 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
Berikut adalah contoh mengunduh file arsip dari Azure Storage.
File harus berupa arsip (.zip, .gz) JAVA_HOME
direktori, sehingga mencakup bin
direktori , , lib
include
, jre
, dll.
- 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
Berikut adalah contoh penggunaan fitur "pra-instal". Fitur ini memungkinkan Anda menggunakan versi Java yang telah diinstal sebelumnya pada agen yang dihosting Microsoft. Anda dapat menemukan versi Java yang telah diinstal sebelumnya yang tersedia di kolom perangkat lunak yang disertakan dalam tabel agen yang dihosting.
- task: JavaToolInstaller@0
inputs:
versionSpec: '8'
jdkArchitectureOption: 'x64'
jdkSourceOption: 'PreInstalled'
Persyaratan
Persyaratan | Deskripsi |
---|---|
Jenis alur | YAML, Build klasik, Rilis klasik |
Berjalan pada | Agen, DeploymentGroup |
Permintaan | Tidak ada |
Kemampuan | Menjalankan tugas ini memenuhi tuntutan berikut untuk setiap tugas berikutnya dalam pekerjaan yang sama: Java, JDK |
Pembatasan perintah | Tugas ini berjalan menggunakan pembatasan perintah berikut: dibatasi |
Variabel yang dapat diatur | Tugas ini memiliki izin untuk mengatur variabel berikut: PATH, JAVA_HOME* |
Versi agen | 2.182.1 atau lebih tinggi |
Kategori tugas | Alat |
Persyaratan | Deskripsi |
---|---|
Jenis alur | YAML, Build klasik, Rilis klasik |
Berjalan pada | Agen, DeploymentGroup |
Permintaan | Tidak ada |
Kemampuan | Menjalankan tugas ini memenuhi tuntutan berikut untuk setiap tugas berikutnya dalam pekerjaan yang sama: Java, JDK |
Pembatasan perintah | Apa pun |
Variabel yang dapat diatur | Apa pun |
Versi agen | Semua versi agen yang didukung. |
Kategori tugas | Alat |
Persyaratan | Deskripsi |
---|---|
Jenis alur | YAML, Build klasik, Rilis klasik |
Berjalan pada | Agen, DeploymentGroup |
Permintaan | Tidak ada |
Kemampuan | Menjalankan tugas ini memenuhi tuntutan berikut untuk setiap tugas berikutnya dalam pekerjaan yang sama: Java |
Pembatasan perintah | Apa pun |
Variabel yang dapat diatur | Apa pun |
Versi agen | Semua versi agen yang didukung. |
Kategori tugas | Alat |
Lihat juga
Untuk penjelasan tentang alat penginstal dan contoh, lihat Alat penginstal.