Bagikan melalui


Membangun aplikasi Java

Layanan Azure DevOps | Azure DevOps Server | Azure DevOps Server 2022 | Azure DevOps Server 2020

Gunakan Azure Pipelines untuk mengotomatiskan build, pengujian, dan penyebaran aplikasi Java. Artikel ini menjelaskan cara menyiapkan alur untuk proyek Java menggunakan alat seperti Maven, Gradle, atau Ant. Anda juga mempelajari cara menyebarkan aplikasi ke layanan Azure seperti App Service, Functions, atau Kubernetes.

Gunakan alur untuk:

Jika Anda mengerjakan proyek Android, lihat Membuat, menguji, dan menyebarkan aplikasi Android.

Prasyarat

Produk Persyaratan
Azure DevOps - Proyek Azure DevOps.
- Kemampuan untuk menjalankan pipeline pada agen yang di-host oleh Microsoft. Anda dapat membeli pekerjaan paralel atau Anda dapat meminta tingkat layanan gratis.
- Pengetahuan dasar tentang YAML dan Azure Pipelines. Untuk informasi selengkapnya, lihat Buat pipa pertama Anda.
- Izin:
     - Untuk membuat alur: Anda harus berada di grup Kontributor dan grup harus mengatur izin Buat alur build ke Izinkan. Anggota grup Administrator Proyek dapat mengelola alur.
    - Untuk membuat koneksi layanan: Anda harus memiliki peran Administrator atau Creator untuk koneksi layanan .
GitHub - Akun GitHub.
- Koneksi layanan GitHub untuk mengotorisasi Azure Pipelines.
Azure Sebuah langganan Azure.
Produk Persyaratan
Azure DevOps - Proyek Azure DevOps.
- Agen mandiri. Untuk membuatnya, lihat Agen yang di-host sendiri.
- Pengetahuan dasar tentang YAML dan Azure Pipelines. Untuk informasi selengkapnya, lihat Buat pipa pertama Anda.
- Izin:
    - Untuk membuat alur: Anda harus berada di grup Kontributor dan grup harus mengatur izin Buat alur build ke Izinkan. Anggota grup Administrator Proyek dapat mengelola alur.
    - Untuk membuat koneksi layanan: Anda harus memiliki peran Administrator atau Creator untuk koneksi layanan .
GitHub - Akun GitHub.
- Koneksi layanan GitHub untuk mengotorisasi Azure Pipelines.
Azure Sebuah langganan Azure.

Menyiapkan repositori GitHub

Fork repositori berikut ke akun GitHub Anda:

https://github.com/MicrosoftDocs/pipelines-java

Buat alur

  1. Masuk ke organisasi Azure DevOps Anda, dan buka proyek Anda.

  2. Buka Alur, lalu pilih Alur baru atau Buat alur jika membuat alur pertama dalam proyek.

  3. Ikuti langkah-langkah wizard, dimulai dengan memilih GitHub sebagai lokasi kode sumber Anda. Anda dapat diarahkan ke GitHub untuk masuk. Jika demikian, masukkan informasi masuk GitHub Anda.

  4. Pilih repositori Anda. Anda mungkin diarahkan ke GitHub untuk menginstal aplikasi Azure Pipelines. Jika demikian, pilih Setujui & instal untuk melanjutkan.

  5. Saat Anda melihat tab Konfigurasikan alur , pilih Maven, Gradle, atau Ant bergantung pada cara Anda ingin membuat kode.

  6. File azure-pipelines.yml yang berisi definisi alur Anda dibuat di repositori Anda dan dibuka di editor YAML. Anda dapat mengkustomisasi alur dengan menambahkan lebih banyak tugas atau mengubah tugas yang ada. Untuk informasi selengkapnya tentang tugas build, lihat Membangun kode Anda.

  7. Setelah selesai mengedit azure-pipelines.yml, pilih Simpan dan jalankan.

  8. Untuk menerapkan file ke azure-pipelines.yml repositori Anda, pilih Simpan dan jalankan lagi.

Pilih Pekerjaan untuk menonton pipeline Anda beraksi.

  1. Buka koleksi Anda dan pilih proyek Anda.

  2. Pilih Alur, lalu pilih Alur baru atau Buat alur jika membuat alur pertama dalam proyek.

  3. Lakukan langkah-langkah wizard dengan terlebih dahulu memilih GitHub Enterprise Server sebagai lokasi kode sumber Anda.

  4. Gunakan koneksi layanan GitHub yang ada atau buat yang baru.

    Untuk membuat koneksi layanan:

    1. Pilih Sambungkan ke GitHub Enterprise Server.
    2. Masukkan URL GitHub Enterprise Server Anda.
    3. Masukkan token akses pribadi GitHub Enterprise Server Anda. Jika Anda tidak memiliki token akses pribadi, Anda dapat membuatnya di akun GitHub Enterprise Server Anda. Untuk informasi selengkapnya, lihat Membuat token akses pribadi.
  5. Pilih repositori Anda. Anda mungkin diarahkan ke GitHub untuk menginstal aplikasi Azure Pipelines. Jika demikian, pilih Setujui & instal.

  6. Saat Anda melihat tab Konfigurasikan alur , pilih Maven, Gradle, atau Ant bergantung pada cara Anda ingin membuat kode.

  7. File azure-pipelines.yml yang berisi definisi alur Anda dibuat di repositori Anda dan dibuka di editor YAML. Anda dapat mengkustomisasi alur dengan menambahkan lebih banyak tugas atau mengubah tugas yang ada. Untuk informasi selengkapnya tentang tugas build, lihat Membangun kode Anda.

  8. Setelah selesai mengedit azure-pipelines.yml, pilih Simpan dan jalankan.

  9. Untuk menerapkan file ke azure-pipelines.yml repositori Anda, pilih Simpan dan jalankan lagi.

Anda dapat memilih Tugas untuk menonton jalur kerja Anda beraksi.

Anda sekarang memiliki alur YAML yang berfungsi (azure-pipelines.yml) di repositori Anda yang siap untuk Anda sesuaikan! Untuk membuat perubahan pada pipeline Anda, pilih alur tersebut di halaman Pipelines, lalu Editazure-pipelines.yml file.

Membangun lingkungan

Gunakan Azure Pipelines untuk membangun aplikasi Java tanpa menyiapkan infrastruktur. Buat di gambar Windows, Linux, atau macOS. Agen yang dihosting Microsoft di Azure Pipelines memiliki JDK modern dan alat lain untuk Java yang telah diinstal sebelumnya. Untuk memeriksa versi Java mana yang diinstal, lihat Agen yang dihosting Microsoft.

Pilih gambar yang sesuai dengan memperbarui cuplikan berikut dalam file Anda azure-pipelines.yml .

pool:
  vmImage: 'ubuntu-latest' # other options: 'macOS-latest', 'windows-latest'

Lihat Agen yang dihosting Microsoft untuk daftar lengkap gambar.

Sebagai alternatif untuk agen yang dihosting Microsoft, siapkan agen yang dihost sendiri dengan Java yang diinstal. Gunakan agen yang dihost sendiri untuk menghemat waktu jika Anda memiliki repositori besar atau menjalankan build bertambah bertahap.

Build berjalan pada agen yang dihost sendiri. Pastikan Java dan alat yang diperlukan untuk metode build yang Anda pilih diinstal pada host agen.

Anda dapat memilih kumpulan agen dan kemampuan agen di bagian Kumpulan agen dan Spesifikasi Agen pada tab Opsi di editor alur.

Misalnya, tentukan kumpulan agen dan agen dengan kemampuan Maven dengan menambahkan cuplikan berikut ke file Anda azure-pipelines.yml .

pool: 
  name: MyPool
  demands: maven

Membuat kode Anda

Anda dapat membuat aplikasi Java dengan Maven, Gradle, Ant, atau skrip. Bagian berikut menunjukkan kepada Anda cara menambahkan langkah build ke alur Anda untuk setiap metode.

Maven

Untuk build Maven, tambahkan tugas berikut ke azure-pipelines.yml file. Ganti nilai agar sesuai dengan proyek Anda. Untuk informasi selengkapnya tentang opsi tugas, lihat tugas Maven.

steps:
- task: Maven@4
  inputs:
    mavenPomFile: 'pom.xml'
    mavenOptions: '-Xmx3072m'
    javaHomeOption: 'JDKVersion'
    jdkVersionOption: 'default'
    jdkArchitectureOption: 'x64'
    publishJUnitResults: true
    testResultsFiles: '**/TEST-*.xml'
    goals: 'package'

Untuk Spring Boot, Anda juga dapat menggunakan perintah Maven. Pastikan bahwa nilai mavenPomFile Anda mencerminkan jalur ke file pom.xml Anda. Misalnya, jika Anda menggunakan repo sampel Spring Boot, jalur Anda adalah complete/pom.xml.

Sesuaikan jalur build

Atur mavenPomFile nilai jika pom.xml file tidak berada di akar repositori. Nilai jalur file harus relatif terhadap akar repositori, seperti IdentityService/pom.xml atau $(system.defaultWorkingDirectory)/IdentityService/pom.xml.

Menyesuaikan sasaran Maven

Atur nilai tujuan ke daftar tujuan yang dipisahkan spasi bagi Maven untuk dieksekusi, seperti clean package. Untuk detail tentang fase dan tujuan Java umum, lihat dokumentasi Maven Apache.

Gradle

Untuk build Gradle, tambahkan tugas berikut ke azure-pipelines.yml file. Untuk informasi selengkapnya tentang opsi ini, lihat tugas Gradle .

steps:
- task: Gradle@3
  inputs:
    workingDirectory: ''
    gradleWrapperFile: 'gradlew'
    gradleOptions: '-Xmx3072m'
    javaHomeOption: 'JDKVersion'
    jdkVersionOption: 'default'
    jdkArchitectureOption: 'x64'
    publishJUnitResults: true
    testResultsFiles: '**/TEST-*.xml'
    tasks: 'build'

Pembungkus Gradle

gradlew Pastikan file berada di repositori. Jika tidak, hasilkan dengan menjalankan gradle wrapper di direktori akar proyek. Untuk informasi tentang membuat pembungkus Gradle, lihat Gradle.

Pilih versi Gradle

Versi Gradle yang diinstal pada komputer agen digunakan kecuali file repositori gradle/wrapper/gradle-wrapper.properties Anda memiliki distributionUrl properti yang menentukan versi Gradle yang berbeda untuk diunduh dan digunakan selama build.

Sesuaikan jalur build

Atur workingDirectory nilai jika gradlew file tidak berada di akar repositori. Nilai direktori harus relatif terhadap akar repositori, seperti IdentityService atau $(system.defaultWorkingDirectory)/IdentityService.

Sesuaikan gradleWrapperFile nilai jika file Anda gradlew tidak berada di akar repositori. Nilai jalur file harus relatif terhadap akar repositori, seperti IdentityService/gradlew atau $(system.defaultWorkingDirectory)/IdentityService/gradlew.

Sesuaikan tugas Gradle

Sesuaikan nilai tugas untuk tugas yang harus dijalankan Gradle, seperti build atau check. Untuk informasi selengkapnya tentang tugas Plugin Java umum untuk Gradle, lihat dokumentasi Gradle.

Semut

Pada build Ant, tambahkan tugas berikut ke dalam file Anda azure-pipelines.yml. Ubah nilai, seperti jalur ke file Anda build.xml , agar sesuai dengan konfigurasi proyek Anda. Untuk informasi selengkapnya tentang opsi ini, lihat tugas Ant . Jika menggunakan repositori sampel, Anda perlu menyediakan build.xml file di repositori Anda.

steps:
- task: Ant@1
  inputs:
    workingDirectory: ''
    buildFile: 'build.xml'
    javaHomeOption: 'JDKVersion'
    jdkVersionOption: 'default'
    jdkArchitectureOption: 'x64'
    publishJUnitResults: false
    testResultsFiles: '**/TEST-*.xml'

Skrip

Untuk membangun dengan baris perintah atau skrip, tambahkan salah satu cuplikan ini ke azure-pipelines.yml file.

Skrip dalam baris

Pada langkah script: ini, skrip dalam baris dijalankan menggunakan Bash di Linux dan macOS, serta Command Prompt di Windows. Untuk detailnya, lihat tugas Bash atau tugas Baris Perintah.

steps:
- script: |
    echo Starting the build
    mvn package
  displayName: 'Build with Maven'

Berkas skrip

Tugas ini menjalankan file skrip yang ada di repositori Anda. Untuk detailnya, lihat tugas Skrip Shell, Skrip Batch, atau PowerShell.

steps:
- task: ShellScript@2
  inputs:
    scriptPath: 'build.sh'

Langkah berikutnya

Terbitkan output build Anda ke dalam pipeline Anda. Paketkan dan terbitkan aplikasi Anda dalam paket Maven atau file .war/jar untuk menyebarkannya ke aplikasi web.

Pelajari selengkapnya tentang membuat alur CI/CD untuk target penyebaran Anda: