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.
- Egy Azure DevOps-szervezet. Hozzon létre egyet ingyen.
- Egy Azure DevOps-projekt. Ha nincs ilyenje, hozzon létre egy projektet .
- 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
Jelentkezzen be az Azure DevOps-szervezetbe, és nyissa meg a projektet.
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.
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.
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.
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.
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.Ha végzett a szerkesztéssel, válassza a
azure-pipelines.yml
Mentés és futtatás lehetőséget.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.
Nyissa meg a gyűjteményt, és válassza ki a projektet.
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.
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.
Használjon meglévő GitHub-szolgáltatáskapcsolatot, vagy hozzon létre egy újat.
Szolgáltatáskapcsolat létrehozása:
- Válassza a Csatlakozás a GitHub Enterprise Serverhez lehetőséget.
- Adja meg a GitHub Enterprise Server URL-címét.
- 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.
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.
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.
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.Ha végzett a szerkesztéssel, válassza a
azure-pipelines.yml
Mentés és futtatás lehetőséget.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: