Java-alkalmazások készítése

Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019

Folyamat használatával automatikusan:

  • Készítse el a projektet a Maven, a Gradle vagy az Ant használatával.
  • Teszteket és kódelemzési eszközöket futtathat.
  • Tegye közzé az alkalmazást a folyamaton és az Azure Artifactsen.
  • Az alkalmazás üzembe helyezése Azure-alkalmazás Szolgáltatásban, Az Azure Functionsben vagy az Azure Kubernetes Service-ben.

Ha Android-projekten dolgozik, tekintse meg az Android-alkalmazások összeállítását, tesztelését és üzembe helyezését.

Előfeltételek

A következő példa futtatásához a következőket kell tennie:

  • Egy GitHub-fiók, ahol adattárat hozhat létre. Hozzon létre egyet ingyen.
  • Hozzáférés egy Azure DevOps Server-gyűjteményhez.
  • Az Azure Pipelines saját üzemeltetésű Azure DevOps-ügynökökön való futtatásának lehetősége.
  • Egy Azure DevOps-projekt. Ha nincs ilyenje, hozzon létre egy projektet .

GitHub-adattár létrehozása

A következő adattár elágazása a GitHub-fiókba:

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

Folyamat létrehozása

  1. Jelentkezzen be az Azure DevOps-szervezetbe, és nyissa meg a projektet.

  2. Lépjen a Folyamatok elemre, majd válassza az Új folyamat vagy a Folyamat létrehozása lehetőséget, ha az első folyamatot hozza létre a projektben.

  3. A varázsló lépéseinek végrehajtásához először válassza ki a GitHubot a forráskód helyeként. Előfordulhat, hogy a rendszer átirányítja a GitHubra a bejelentkezéshez. Ha igen, adja meg a GitHub hitelesítő adatait.

  4. Válassza ki az adattárat. Előfordulhat, hogy a Rendszer átirányítja a GitHubra az Azure Pipelines alkalmazás telepítéséhez. Ha igen, válassza a Jóváhagyás > telepítés lehetőséget.

  5. Amikor megjelenik a Folyamat konfigurálása lap, válassza a Maven, a Gradle vagy az Ant lehetőséget attól függően, hogy hogyan szeretné létrehozni a kódot.

  6. A azure-pipelines-yml folyamatdefiníciót tartalmazó fájl az adattárban jön létre, és a YAML-szerkesztőben nyílik meg. A folyamatot testre szabhatja további tevékenységek hozzáadásával vagy a meglévő tevékenységek módosításával. A buildelési feladatokról további információt a kód összeállítása című témakörben talál.

  7. Ha végzett a szerkesztéssel, válassza a azure-pipelines.ymlMentés és futtatás lehetőséget.

  8. Ha véglegesíteni szeretné a fájlt az azure-pipelines.yml adattárban, válassza a Mentés és futtatás lehetőséget.

Válassza a Feladat lehetőséget a folyamat működés közbeni megtekintéséhez.

  1. Nyissa meg a gyűjteményt, és válassza ki a projektet.

  2. Válassza a Folyamatok lehetőséget, majd válassza az Új folyamat vagy a Folyamat létrehozása lehetőséget, ha az első folyamatot hozza létre a projektben.

  3. A varázsló lépéseinek végrehajtásához először válassza ki a GitHub Enterprise Servert a forráskód helyeként.

  4. Használjon meglévő GitHub-szolgáltatáskapcsolatot, vagy hozzon létre egy újat.

    Szolgáltatáskapcsolat létrehozása:

    1. Válassza Csatlakozás a GitHub Enterprise Serverre.
    2. Adja meg a GitHub Enterprise Server URL-címét.
    3. Adja meg a GitHub Enterprise Server személyes hozzáférési jogkivonatát. Ha nem rendelkezik személyes hozzáférési jogkivonattal, létrehozhat egyet a GitHub Enterprise Server-fiókjában. További információ: Személyes hozzáférési jogkivonat létrehozása.
  5. Válassza ki az adattárat. Előfordulhat, hogy a Rendszer átirányítja a GitHubra az Azure Pipelines alkalmazás telepítéséhez. Ha igen, válassza a Jóváhagyás > telepítés lehetőséget.

  6. Amikor megjelenik a Folyamat konfigurálása lap, válassza a Maven, a Gradle vagy az Ant lehetőséget attól függően, hogy hogyan szeretné létrehozni a kódot.

  7. A azure-pipelines-yml folyamatdefiníciót tartalmazó fájl az adattárban jön létre, és a YAML-szerkesztőben nyílik meg. A folyamatot testre szabhatja további tevékenységek hozzáadásával vagy a meglévő tevékenységek módosításával. A buildelési feladatokról további információt a kód összeállítása című témakörben talál.

  8. Ha végzett a szerkesztéssel, válassza a azure-pipelines.ymlMentés és futtatás lehetőséget.

  9. Ha véglegesíteni szeretné a fájlt az azure-pipelines.yml adattárban, válassza a Mentés és futtatás lehetőséget.

A Feladat lehetőséget választva működés közben tekintheti meg a folyamatot.

Most már rendelkezik egy működő YAML-folyamattal (azure-pipelines.yml) az adattárban, amely készen áll a testreszabásra! A folyamat módosításához jelölje ki azt a Folyamatok lapon, majd szerkessze a azure-pipelines.yml fájlt.

Környezet létrehozása

Az Azure Pipelines használatával Java-alkalmazásokat hozhat létre anélkül, hogy saját infrastruktúrát kellene beállítania. Windows, Linux vagy macOS rendszerképekre is építhet. Az Azure Pipelines Microsoft által üzemeltetett ügynökei modern JDK-kkal és egyéb java-eszközökkel rendelkeznek előre telepítve. Ha tudni szeretné, hogy a Java mely verziói vannak telepítve, tekintse meg a Microsoft által üzemeltetett ügynököket.

A megfelelő kép kiválasztásához frissítse a következő kódrészletet a azure-pipelines.yml fájlban.

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

A képek teljes listáját a Microsoft által üzemeltetett ügynökökben találja.

A Microsoft által üzemeltetett ügynökök használata helyett saját üzemeltetésű ügynököket is beállíthat a Java telepítésével. A saját üzemeltetésű ügynökökkel több időt takaríthat meg, ha nagy adattárral rendelkezik, vagy növekményes buildeket futtat.

A buildek egy saját üzemeltetésű ügynökön futnak. Győződjön meg arról, hogy rendelkezik Java-val és az ügynök gazdagépére telepített választott módszerrel való létrehozáshoz szükséges eszközökkel.

Az ügynökkészletet és az ügynökképességeket a folyamatszerkesztő Beállítások lapJának Ügynökkészlet és Ügynök specifikáció szakaszában választhatja ki.

Ha például meg szeretné adni az ügynökkészletet és egy Maven-képességgel rendelkező ügynököt, adja hozzá a következő kódrészletet a azure-pipelines.yml fájlhoz.

pool: 
  name: MyPool
  demands: maven

A kód összeállítása

A Java-alkalmazást a Maven, a Gradle, az Ant vagy egy szkript használatával is létrehozhatja. Az alábbi szakaszok bemutatják, hogyan adhat hozzá buildelési lépést a folyamathoz az egyes metódusokhoz.

Maven

A Maven-buildtel a következő feladatok lesznek hozzáadva a azure-pipelines.yml fájlhoz. Cserélje le a projektnek megfelelő értékeket. A tevékenységbeállításokról további információt a Maven-tevékenységben talál.

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

Spring Boot esetén a Maven-feladatot is használhatja. Győződjön meg arról, hogy az mavenPomFile érték tükrözi a fájl elérési útját pom.xml . Ha például a Spring Boot-mintaadattárat használja, az elérési út a következő complete/pom.xml.

A buildelési útvonal testreszabása

Módosítsa az mavenPomFile értéket, ha a pom.xml fájl nincs az adattár gyökerében. A fájl elérési útja értékének az adattár gyökeréhez kell viszonyítani, például IdentityService/pom.xml vagy $(system.defaultWorkingDirectory)/IdentityService/pom.xml.

A Maven céljainak testreszabása

Állítsa be a célok értékét a Maven által végrehajtandó célok szóközzel elválasztott listájára, például clean package. A Java gyakori fázisairól és céljairól az Apache Maven dokumentációjában olvashat.

Gradle

A Gradle buildtel a következő feladat lesz hozzáadva a azure-pipelines.yml fájlhoz. Ezekről a lehetőségekről további információt a Gradle-feladatban talál.

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

Gradle burkoló

Az adattárban egy fájlnak kell szerepelnie gradlew . Ha nincs ilyenje, létrehozhatja a projekt gyökérkönyvtárában való futtatással gradle wrapper . A Gradle-burkoló létrehozásáról a Gradle-ben talál további információt.

Válassza ki a Gradle verzióját

Az ügynökgépre telepített Gradle-verziót csak akkor használja a rendszer, ha az adattár fájlja gradle/wrapper/gradle-wrapper.properties rendelkezik egy distributionUrl olyan tulajdonságtal, amely egy másik Gradle-verziót határoz meg a buildelés során letöltendő és használható Gradle-verzióhoz.

A buildelési útvonal módosítása

Módosítsa az workingDirectory értéket, ha a gradlew fájl nincs az adattár gyökerében. A könyvtárértéknek az adattár gyökeréhez kell viszonyítani, például IdentityService vagy $(system.defaultWorkingDirectory)/IdentityService.

Módosítsa az gradleWrapperFile értéket, ha a gradlew fájl nincs az adattár gyökerében. A fájl elérési útja értékének az adattár gyökeréhez kell viszonyítani, például IdentityService/gradlew vagy $(system.defaultWorkingDirectory)/IdentityService/gradlew.

Gradle-tevékenységek módosítása

Módosítsa a Gradle által végrehajtandó tevékenységek ( például build vagy check. A Gradle-hez készült gyakori Java Beépülő modulokkal kapcsolatos további információkért tekintse meg a Gradle dokumentációját.

Ant

Az Ant buildben adja hozzá a következő feladatot a azure-pipelines.yml fájlhoz. Módosítsa a projektkonfigurációnak megfelelő értékeket, például a build.xml fájl elérési útját. Ezekről a lehetőségekről további információt az Ant tevékenységben talál. Ha a mintaadattárat használja, meg kell adnia egy build.xml fájlt az adattárban.

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

Szkript

Ha parancssort vagy szkriptet szeretne létrehozni, adja hozzá az alábbi kódrészletek egyikét a azure-pipelines.yml fájlhoz.

Beágyazott szkript

A script: lépés egy beágyazott szkriptet futtat linuxos Bash, macOS és parancssor használatával Windows rendszeren. Részletekért lásd a Bash vagy a parancssori feladatot.

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

Szkriptfájl

Ez a feladat futtat egy szkriptfájlt, amely az adattárban található. Részletekért tekintse meg a Shell-szkriptet, a Batch-szkriptet vagy a PowerShell-feladatot.

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

Következő lépések

A buildkimenetet közzéteheti a folyamaton. Az alkalmazást csomagolhatja és közzéteheti Egy Maven-csomagban vagy egy .war/jar fájlban, amelyet egy webalkalmazásban kell üzembe helyezni.

További információ a CI/CD-folyamat üzembehelyezési célhoz való létrehozásáról: