Java uygulamaları oluşturun

Azure Pipelines | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018 | TFS 2017

Not

Bu kılavuz Azure Pipelines bulunan YAML tabanlı işlem hatlarını kullanır. TFS için aşağıdaki YAML 'de kullanılanlarla ilişkili olan görevleri kullanın.

Java projelerinizi otomatik olarak derlemek ve test etmek için bir işlem hattı kullanın. Şunları nasıl yapacağınızı öğrenin:

Uygulamanızı derleyip test etmeniz için Azure App Service, Azure Işlevleriveya Azure Kubernetes hizmetinedağıtım yapabilirsiniz. Android projesi üzerinde çalışıyorsanız bkz. Android uygulamaları oluşturma, test etme ve dağıtma.

İlk işlem hattınızı oluşturma

Azure Pipelines yeni misiniz? Bu durumda, diğer bölümlere geçmeden önce bu bölümü oluşturmak için kullanmayı öneririz.

Kodu alma

Bu GitHub:

bu depoyu Azure DevOps Server 2019 ' deki Git deponuza aktarın:

Bu depoyu TFS 'deki git deponuza aktarın:

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

Azure Pipelines oturum açın

Azure Pipelinesoturum açın. oturum açtıktan sonra, tarayıcınız öğesine gider https://dev.azure.com/my-organization-name ve Azure DevOps panonuzu görüntüler.

Seçtiğiniz kuruluş içinde bir proje oluşturun. Kuruluşta hiç projeniz yoksa, Çalışmaya başlamanız için proje oluşturma ekranı görürsünüz. Aksi takdirde, Project sağ üst köşesindeki Create Project (Oluştur) düğmesini seçin.

İşlem hattını oluşturma

  1. Azure DevOps oturum açma ve projenize gidin.

  2. Pipelines'a gidin ve Yeni İşlem Hattı'ı seçin.

  3. İlk olarak kaynak kodunuzun konumu olarak GitHub sihirbazın adımlarını izleyin.

  4. Oturum açmanız için GitHub yönlendirilmesine neden olabilir. Öyleyse, kimlik bilgilerinizi GitHub girin.

  5. Depo listesi görüntülendiğinde depoyu seçin.

  6. Uygulamayı yüklemek için GitHub yeniden Azure Pipelines olabilir. Öyleyse, Yükle'yi onayla'& seçin.

Yapılandır sekmesi göründüğünde Maven' ı seçin.

  1. Yeni ardışık düzen belirdiğinde, ne yaptığını görmek için YAML 'ye göz atın. Hazırsanız Kaydet ve Çalıştır' ı seçin.

    Yeni bir YAML ardışık düzeninde Kaydet ve Çalıştır düğmesi

  2. Deponuza yeni bir Azure-Pipelines. yıml dosyası uygulamanız istenir. İletiden memnun olduktan sonra Kaydet ' i seçin ve yeniden çalıştırın .

    İşlem hattınızı eylem bölümünde izlemek isterseniz, yapı işini seçin.

    Kodunuz Maven şablonuyla iyi bir eşleşme olduğundan, sizin için otomatik olarak oluşturduğumuz bir işlem hattı oluşturdunuz ve çalıştırdınız.

    Artık, deponuzda özelleştirmeniz için hazır bir YAML işlem hattı ( azure-pipelines.yml ) çalışıyor!

  3. işlem hattınızda değişiklik yapmaya hazırsanız, Pipelines sayfasında seçin ve sonra dosyayı düzenleyin azure-pipelines.yml .

  4. İşlem hattınızı özelleştirmenin daha yaygın yöntemlerinden bazılarını öğrenmek için aşağıdaki bölümlere bakın.

  1. İşlem hattı oluşturun (nasıl olduğunu bilmiyorsanız, bkz. ilk işlem hattınızı oluşturmave şablon Için Maven'i seçme. Bu şablon, kodu örnek depoda oluşturmak için gereken görevleri otomatik olarak ekler.

  2. İşlem hattını kaydedin ve bir derlemeyi kuyruğa alın. Derleme #nnnnnnnn. n sıraya alınmış ileti görüntülendiğinde, işlem hattınızı eylemde görmek için sayı bağlantısını seçin.

    Artık özelleştirmeniz için hazır olan çalışır durumda bir işlem hattı var!

  3. İşlem hattınızda değişiklik yapmaya hazırsanız, düzenleyin .

  4. İşlem hattınızı özelleştirmenin daha yaygın yöntemlerinden bazılarını öğrenmek için aşağıdaki bölümlere bakın.

Yapı ortamı

Azure Pipelines kullanarak, kendi altyapınızı ayarlamanıza gerek kalmadan Java uygulamaları oluşturabilirsiniz. Windows, Linux veya macos görüntülerinde oluşturabilirsiniz. Azure Pipelines 'daki Microsoft tarafından barındırılan aracılar, modern jdks ve Java için önceden yüklenmiş diğer araçlara sahiptir. Hangi Java sürümlerinin yüklendiğini öğrenmek için bkz. Microsoft tarafından barındırılan aracılar.

azure-pipelines.ymlUygun görüntüyü seçmek için dosyanızdaki aşağıdaki kod parçacığını güncelleştirin.

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

Görüntülerin tam listesi için bkz. Microsoft tarafından barındırılan aracılar .

Microsoft tarafından barındırılan aracıların kullanılmasına alternatif olarak, Java ile Şirket içinde barındırılan aracılar da ayarlayabilirsiniz. Ayrıca, büyük bir deponuz varsa veya artımlı derlemeler çalıştırırsanız daha fazla zaman kazanmak için kendi kendine barındırılan aracıları kullanabilirsiniz.

Yapılarınız kendi kendine barındırılan bir aracıdaçalışır. Aracıda Java 'nın yüklü olduğundan emin olun.

Kodunuzu oluşturma

Maven

Maven ile derlemek için, dosyanıza aşağıdaki kod parçacığını ekleyin azure-pipelines.yml . Dosya yolu gibi değerleri, pom.xml Proje yapılandırmanızla eşleşecek şekilde değiştirin. Bu seçenekler hakkında daha fazla bilgi için bkz. Maven görevi.

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

Spring BootIçin Maven görevini de kullanabilirsiniz. mavenPomFileDeğer dosyanızın yolunu yansıttığından emin olun pom.xml . Örneğin, Spring Boot örnek deposunukullanıyorsanız, yolunuz olur complete/pom.xml .

Yapı yolunu özelleştirme

mavenPomFileDosyanızın deponun kökünde olmaması durumunda değeri ayarlayın pom.xml . Dosya yolu değeri, deponun köküne göreli olmalıdır, örneğin IdentityService/pom.xml veya $(system.defaultWorkingDirectory)/IdentityService/pom.xml .

Maven hedeflerini özelleştirme

, Gibi Maven 'nin yürütülmesi için hedefler değerini boşlukla ayrılmış bir hedefler listesine ayarlayın clean package .

Yaygın Java aşamaları ve hedefleri hakkında daha fazla bilgi için bkz. Apache 'Nin Maven belgeleri.

Gradle

Gradle ile derlemek için, dosyanıza aşağıdaki kod parçacığını ekleyin azure-pipelines.yml . Bu seçenekler hakkında daha fazla bilgi için Gradle görevine bakın.

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

Gradle sürümünü seçin

Bir aracı makinede yüklü olan Gradle sürümü, depo gradle/wrapper/gradle-wrapper.properties dosyasında, distributionUrl derleme sırasında indirmek ve kullanmak için farklı bir Gradle sürümü belirten bir özelliği yoksa kullanılacaktır.

Yapı yolunu ayarla

workingDirectoryDosyanızın deponun kökünde olmaması durumunda değeri ayarlayın gradlew . Dizin değeri, deponun köküne göreli olmalıdır, örneğin IdentityService veya $(system.defaultWorkingDirectory)/IdentityService .

gradleWrapperFileDosyanızın deponun kökünde olmaması durumunda değeri ayarlayın gradlew . Dosya yolu değeri, deponun köküne göreli olmalıdır, örneğin IdentityService/gradlew veya $(system.defaultWorkingDirectory)/IdentityService/gradlew .

Gradle görevlerini ayarla

Veya gibi Gradle yürütmesi gereken görevler için Görevler değerini ayarlayın build check .

Gradle için genel Java eklentisi görevleri hakkında ayrıntılar için bkz. Gradle 's documentation.

ZI

Ant ile derlemek için, dosyanıza aşağıdaki kod parçacığını ekleyin azure-pipelines.yml . Dosya yolu gibi değerleri, build.xml Proje yapılandırmanızla eşleşecek şekilde değiştirin. Bu seçenekler hakkında daha fazla bilgi için ant görevine bakın.

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

Komut Dosyası

Komut satırı veya komut dosyası ile derlemek için, dosyanıza aşağıdaki kod parçacıklarında birini ekleyin azure-pipelines.yml .

Satır içi betik

script:Adım, Linux ve macOS 'Ta Bash ve Windows üzerinde komut istemi kullanarak bir satır içi betik çalıştırır. Ayrıntılar için Bash veya komut satırı görevine bakın.

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

Betik dosyası

Bu kod parçacığı, deponuzdaki bir komut dosyasını çalıştırır. Ayrıntılar için bkz. kabuk betiği, toplu Iş betiğiveya PowerShell görevi.

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

Sonraki Adımlar

uygulamanızı derleyip test ettikten sonra, derleme çıkışını Azure Pipelines yükleyebilir, bir maven paketi oluşturabilir ve yayımlayabilir ya da yapı çıkışını bir web uygulamasına dağıtılacak bir. war/jar dosyasına paketleyebilirsiniz.

Ardından, seçtiğiniz dağıtım hedefi için bir CI/CD işlem hattı oluşturma hakkında daha fazla bilgi edinmenize önerilir: