Maven-artefacten publiceren met Azure Pipelines
Met behulp van Azure Pipelines kunt u uw Maven-pakketten publiceren naar Azure Artifacts-feeds, openbare registers of als pipeline-artefact.
Uw project instellen
Voeg het volgende fragment toe aan de
repositories
secties endistributionManagement
secties in uw pom.xml-bestand . Vervang de tijdelijke aanduidingen door de naam van uw organisatie, de projectnaam en de naam van uw feed.<repository> <id>MavenDemo</id> <url>https://pkgs.dev.azure.com/ORGANIZATION-NAME/PROJECT-NAME/_packaging/FEED-NAME/maven/v1</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository>
Configureer het bestand settings.xml als volgt. Vervang de tijdelijke aanduidingen door de naam van uw organisatie, uw projectnaam en uw persoonlijke toegangstoken.
<server> <id>PROJECT-NAME</id> <username>ORGANIZATION-NAME</username> <password>PERSONAL-ACCESS-TOKEN</password> </server>
Maak een persoonlijk toegangstoken met het lees- en schrijfbereik van de verpakking en plak deze in de
password
tag in het bestand settings.xml .
Uw code bouwen
In dit voorbeeld gebruiken we de Maven-taak om het project te bouwen met Azure Pipelines.
- task: Maven@3
inputs:
mavenPomFile: 'my-app/pom.xml' // Path to your pom file
mavenOptions: '-Xmx3072m'
javaHomeOption: 'JDKVersion'
jdkVersionOption: '1.8'
jdkArchitectureOption: 'x64'
publishJUnitResults: true
testResultsFiles: '**/surefire-reports/TEST-*.xml'
goals: 'package'
Pakketten publiceren naar uw pipeline
In het volgende voorbeeld ziet u hoe u uw artefact publiceert om in uw pijplijn te vallen . Gebruik de taak Bestanden kopiëren om uw pakketten naar een doelmap te kopiëren en gebruik vervolgens Build-artefacten publiceren om uw buildartefacten naar Azure Pipelines te publiceren.
- task: CopyFiles@2
inputs:
Contents: '**'
TargetFolder: '$(build.artifactstagingdirectory)'
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)'
ArtifactName: 'drop'
publishLocation: 'Container'
Pakketten publiceren naar uw feed
Als u uw pakket wilt publiceren naar een Azure Artifacts-feed, gebruikt u de Maven-taak om uw artefact in uw feed te implementeren.
- task: Maven@3
inputs:
mavenPomFile: 'my-app/pom.xml'
mavenOptions: '-Xmx3072m'
javaHomeOption: 'JDKVersion'
jdkVersionOption: '1.8'
jdkArchitectureOption: 'x64'
mavenAuthenticateFeed: true
publishJUnitResults: false
testResultsFiles: '**/surefire-reports/TEST-*.xml'
goals: 'deploy'
Q&A
V: Hoe kan ik verifiëren met MavenAuthenticate?
A: U kunt de MavenAuthenticate-taak gebruiken om te verifiëren met Maven-feeds binnen en buiten uw organisatie. Zie de onderstaande voorbeelden voor meer informatie:
Verwante artikelen:
- NPM-pakketten publiceren met Azure Pipelines
- Release artifacts en Artifact sources (Artefacten en artefactbronnen vrijgeven)
- NuGet-pakketten publiceren met Azure Pipelines