Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022 | Azure DevOps Server 2020
Gebruik Azure Pipelines om de build, test en implementatie van Java-toepassingen te automatiseren. In dit artikel wordt uitgelegd hoe u een pijplijn instelt voor Java-projecten met behulp van hulpprogramma's zoals Maven, Gradle of Ant. U leert ook hoe u uw app implementeert in Azure-services, zoals App Service, Functions of Kubernetes.
Gebruik een pijplijn om het volgende te doen:
- Bouw uw project met Maven, Gradle of Ant.
- Voer tests en hulpprogramma's voor codeanalyse uit.
- Publiceer uw app met behulp van een pijplijn en Azure Artifacts.
- Implementeer uw app in Azure-app Service, Azure Functions of Azure Kubernetes Service.
Als u aan een Android-project werkt, raadpleegt u Android-apps bouwen, testen en implementeren.
Vereisten
| Product | Eisen |
|---|---|
| Azure DevOps | - Een Azure DevOps-project. - Een vermogen om pijplijnen uit te voeren op agents die door Microsoft worden gehost. U kunt een parallelle taak aanschaffen of u kunt een gratis laag aanvragen. - Basiskennis van YAML en Azure Pipelines. Zie Uw eerste pijplijn makenvoor meer informatie. - Toestemmingen: - Als u een pijplijn wilt maken: u moet zich in de groep Inzenders bevinden en de groep moet de machtiging Maak een build-pijplijn hebben ingesteld op Toestaan. Leden van de groep Projectbeheerders kunnen pijplijnen beheren. - Als u serviceverbindingen wilt maken: u moet de Administrator- of Creator- rol hebben voor serviceverbindingen. |
| GitHub | - Een GitHub-account. - Een GitHub-serviceverbinding om Azure Pipelines te autoriseren. |
| Azuur | Een Azure-abonnement. |
| Product | Eisen |
|---|---|
| Azure DevOps | - Een Azure DevOps-project. - Een zelfgehoste agent. Om er een te maken, zie Zelfgehoste agents. - Basiskennis van YAML en Azure Pipelines. Zie Uw eerste pijplijn makenvoor meer informatie. - Toestemmingen: - Als u een pijplijn wilt maken: u moet zich in de groep Inzenders bevinden en de groep moet de machtiging Maak een build-pijplijn hebben ingesteld op Toestaan. Leden van de groep Projectbeheerders kunnen pijplijnen beheren. - Als u serviceverbindingen wilt maken: u moet de Administrator- of Creator- rol hebben voor serviceverbindingen. |
| GitHub | - Een GitHub-account. - Een GitHub-serviceverbinding om Azure Pipelines te autoriseren. |
| Azuur | Een Azure-abonnement. |
Een GitHub-opslagplaats maken
Fork de volgende opslagplaats naar uw GitHub-account:
https://github.com/MicrosoftDocs/pipelines-java
Een pipeline maken
Meld u aan bij uw Azure DevOps-organisatie en ga naar uw project.
Ga naar Pijplijnen en selecteer vervolgens Nieuwe pijplijn of Pijplijn maken als u de eerste pijplijn in het project maakt.
Volg de stappen van de wizard, te beginnen door GitHub te selecteren als de locatie van uw broncode. U wordt mogelijk omgeleid naar GitHub om u aan te melden. Voer in dat geval uw GitHub-referenties in.
Selecteer uw opslagplaats. U wordt mogelijk omgeleid naar GitHub om de Azure Pipelines-app te installeren. Als dat zo is, selecteert u Goedkeuren en installeren om door te gaan.
Wanneer u het tabblad Uw pijplijn configureren ziet, selecteert u Maven, Gradle of Ant, afhankelijk van hoe u uw code wilt bouwen.
In uw opslagplaats wordt er een bestand met uw pijplijndefinitie gemaakt en geopend in de YAML-editor. U kunt de pijplijn aanpassen door meer taken toe te voegen of de bestaande taken te wijzigen. Zie Uw code bouwen voor meer informatie over de buildtaken.
Wanneer u klaar bent met het
azure-pipelines.ymlbewerken, selecteert u Opslaan en uitvoeren.Als u het
azure-pipelines.ymlbestand wilt doorvoeren in uw opslagplaats, selecteert u Opslaan en opnieuw uitvoeren .
Selecteer Taak om uw pijplijn in actie te bekijken.
Ga naar uw verzameling en selecteer uw project.
Selecteer Pijplijnen en selecteer vervolgens Nieuwe pijplijn of Pijplijn maken als u de eerste pijplijn in het project maakt.
Voer de stappen van de wizard uit door eerst GitHub Enterprise Server te selecteren als de locatie van uw broncode.
Gebruik een bestaande GitHub-serviceverbinding of maak een nieuwe.
Een serviceverbinding maken:
- Selecteer Verbinding maken met GitHub Enterprise Server.
- Voer de URL van uw GitHub Enterprise Server in.
- Voer uw persoonlijke toegangstoken voor GitHub Enterprise Server in. Als u geen persoonlijk toegangstoken hebt, kunt u er een maken in uw GitHub Enterprise Server-account. Zie Een persoonlijk toegangstoken maken voor meer informatie.
Selecteer uw opslagplaats. U wordt mogelijk omgeleid naar GitHub om de Azure Pipelines-app te installeren. Als dat het zo is, selecteert u Goedkeuren en installeren.
Wanneer u het tabblad Uw pijplijn configureren ziet, selecteert u Maven, Gradle of Ant, afhankelijk van hoe u uw code wilt bouwen.
In uw opslagplaats wordt er een bestand met uw pijplijndefinitie gemaakt en geopend in de YAML-editor. U kunt de pijplijn aanpassen door meer taken toe te voegen of de bestaande taken te wijzigen. Zie Uw code bouwen voor meer informatie over de buildtaken.
Wanneer u klaar bent met het
azure-pipelines.ymlbewerken, selecteert u Opslaan en uitvoeren.Als u het
azure-pipelines.ymlbestand wilt doorvoeren in uw opslagplaats, selecteert u Opslaan en opnieuw uitvoeren .
U kunt Job selecteren om uw pijplijn in actie te bekijken.
U hebt nu een werkende YAML-pijplijn (azure-pipelines.yml) in uw opslagplaats die u kunt aanpassen. Als u wijzigingen in uw pijplijn wilt aanbrengen, selecteert u deze op de pagina Pijplijnen en bewerkt u het azure-pipelines.yml bestand.
Omgeving bouwen
Gebruik Azure Pipelines om Java-apps te bouwen zonder infrastructuur in te stellen. Bouw voort op Windows-, Linux- of macOS-installatiekopieën. Door Microsoft gehoste agents in Azure Pipelines hebben moderne JDK's en andere hulpprogramma's voor Java die vooraf zijn geïnstalleerd. Als u wilt controleren welke versies van Java zijn geïnstalleerd, raadpleegt u door Microsoft gehoste agents.
Selecteer de juiste afbeelding door het volgende fragment in het azure-pipelines.yml bestand bij te werken.
pool:
vmImage: 'ubuntu-latest' # other options: 'macOS-latest', 'windows-latest'
Zie Microsoft-gehoste agents voor een volledige lijst van afbeeldingen.
Als alternatief voor door Microsoft gehoste agents kunt u zelf-hostende agents instellen waarop Java is geïnstalleerd. Gebruik zelf-hostende agents om tijd te besparen als u een grote opslagplaats hebt of incrementele builds uitvoert.
Builds worden uitgevoerd op een zelfgehoste agent. Zorg ervoor dat Java en de hulpprogramma's die vereist zijn voor de gekozen buildmethode, zijn geïnstalleerd op de host van de agent.
U kunt uw agentgroep en de agentmogelijkheden selecteren in de secties Agentgroep en Agentspecificatie van het tabblad Opties in de pijplijneditor.
Geef bijvoorbeeld de agentgroep en een agent met de Maven-functie op door het volgende fragment toe te voegen aan uw azure-pipelines.yml bestand.
pool:
name: MyPool
demands: maven
Uw code bouwen
U kunt uw Java-app bouwen met Maven, Gradle, Ant of een script. In de volgende secties ziet u hoe u een bouwstap toevoegt aan uw pijplijn voor alle methoden.
Maven
Voor een Maven-build voegt u de volgende taken toe aan het azure-pipelines.yml bestand. Vervang de waarden die overeenkomen met uw project. Zie de Maven-taak voor meer informatie over de taakopties.
steps:
- task: Maven@4
inputs:
mavenPomFile: 'pom.xml'
mavenOptions: '-Xmx3072m'
javaHomeOption: 'JDKVersion'
jdkVersionOption: 'default'
jdkArchitectureOption: 'x64'
publishJUnitResults: true
testResultsFiles: '**/TEST-*.xml'
goals: 'package'
Voor Spring Boot kunt u ook de Maven-taak gebruiken. Zorg ervoor dat uw mavenPomFile waarde het pad naar het pom.xml bestand weerspiegelt. Als u bijvoorbeeld de Spring Boot-voorbeeldopslagplaats gebruikt, is uw pad complete/pom.xml.
Het buildpad aanpassen
Stel de mavenPomFile waarde in als het pom.xml bestand zich niet in de hoofdmap van de opslagplaats bevindt. De waarde van het bestandspad moet relatief zijn ten opzichte van de hoofdmap van de opslagplaats, zoals IdentityService/pom.xml of $(system.defaultWorkingDirectory)/IdentityService/pom.xml.
Maven-doelen aanpassen
Stel de waarde voor doelen in op een door ruimte gescheiden lijst met doelen die Maven moet uitvoeren, zoals clean package. Zie de Maven-documentatie van Apache voor meer informatie over veelvoorkomende Java-fasen en -doelen.
Gradel
Voor een Gradle-build voegt u de volgende taak toe aan het azure-pipelines.yml bestand. Zie de Gradle-taak voor meer informatie over deze opties.
steps:
- task: Gradle@3
inputs:
workingDirectory: ''
gradleWrapperFile: 'gradlew'
gradleOptions: '-Xmx3072m'
javaHomeOption: 'JDKVersion'
jdkVersionOption: 'default'
jdkArchitectureOption: 'x64'
publishJUnitResults: true
testResultsFiles: '**/TEST-*.xml'
tasks: 'build'
Gradle wrapper
Zorg ervoor dat het gradlew bestand zich in de opslagplaats bevindt. Als dat niet het geval is, genereert u het door gradle wrapper uit te voeren in de hoofdmap van het project. Zie gradle voor informatie over het maken van een Gradle-wrapper.
De versie van Gradle kiezen
De versie van Gradle die op de agentcomputer is geïnstalleerd, wordt gebruikt, tenzij het bestand van gradle/wrapper/gradle-wrapper.properties uw opslagplaats een eigenschap heeft die een distributionUrl andere Gradle-versie opgeeft die tijdens de build moet worden gedownload en gebruikt.
Het bouwpad aanpassen
Stel de workingDirectory waarde in als het gradlew bestand zich niet in de hoofdmap van de opslagplaats bevindt.
De mapwaarde moet relatief zijn ten opzichte van de hoofdmap van de opslagplaats, zoals IdentityService of $(system.defaultWorkingDirectory)/IdentityService.
Pas de gradleWrapperFile waarde aan als uw gradlew bestand zich niet in de hoofdmap van de opslagplaats bevindt. De waarde van het bestandspad moet relatief zijn ten opzichte van de hoofdmap van de opslagplaats, zoals IdentityService/gradlew of $(system.defaultWorkingDirectory)/IdentityService/gradlew.
Gradle-taken aanpassen
Pas de taakwaarde aan voor de taken die Gradle moet uitvoeren, zoals build of check. Zie de documentatie van Gradle voor meer informatie over algemene Java-invoegtoepassingstaken voor Gradle.
Mier
Voeg met Ant-build de volgende taak toe aan uw azure-pipelines.yml bestand. Wijzig waarden, zoals het pad naar het build.xml bestand, zodat deze overeenkomt met de projectconfiguratie. Zie de Ant-taak voor meer informatie over deze opties. Als u de voorbeeldopslagplaats gebruikt, moet u een build.xml bestand in uw opslagplaats opgeven.
steps:
- task: Ant@1
inputs:
workingDirectory: ''
buildFile: 'build.xml'
javaHomeOption: 'JDKVersion'
jdkVersionOption: 'default'
jdkArchitectureOption: 'x64'
publishJUnitResults: false
testResultsFiles: '**/TEST-*.xml'
Script
Als u wilt bouwen met een opdrachtregel of script, voegt u een van deze fragmenten toe aan het azure-pipelines.yml bestand.
Inlinescript
In de script: stap wordt een inlinescript uitgevoerd met behulp van Bash in Linux en macOS en opdrachtprompt in Windows. Zie voor meer informatie de Bash of opdrachtregel taak.
steps:
- script: |
echo Starting the build
mvn package
displayName: 'Build with Maven'
Scriptbestand
Met deze taak wordt een scriptbestand uitgevoerd dat zich in uw opslagplaats bevindt. Zie de Shell-script-, Batch-script- of PowerShell-taak voor meer informatie.
steps:
- task: ShellScript@2
inputs:
scriptPath: 'build.sh'
Volgende stappen
Publiceer de build-uitvoer naar uw pijplijn. Uw app inpakken en publiceren in een Maven-pakket of een WAR/JAR-bestand om deze te implementeren in een webtoepassing.
Meer informatie over het maken van een CI/CD-pijplijn voor uw implementatiedoel: