首页 > 解决方案 > 天蓝色管道 Maven 发布

问题描述

我正在写我的第一个管道,如果有人可以帮忙。我在创建发布版本 jar 时遇到问题。

2 个 pom.xml(1 个在主分支,1 个在开发分支)

主分支 pom.xml 已定义发布插件 开发分支 pom.xml 已定义编译和发布插件。

除此之外 pom.xml 是相同的

当我从开发分支运行管道时,它会检查开发 pom.xml 并像 create snapshot.jar 一样工作得非常好,(我在这里使用 mvn clean install )

当我从 master 分支运行管道时,它会检查 master pom.xml 并给出父 pom 不可解决的问题,(我在这里使用 mvn release:prepare release:perform)

[Thread-5] INFO org.apache.maven.shared.release.exec.InvokerMavenExecutor - [FATAL] Non-resolvable parent POM for com.xxxxxxxxx: com.xxxxx-parent:pom:1.0.0 was not found in https://repo.maven.apache.org/maven2 during a previous attempt. This failure was cached in the local repository and resolution is not reattempted until the update interval of central has elapsed or updates are forced and 'parent.relativePath' points at wrong local POM @ line 5, column 13
[Thread-5] INFO org.apache.maven.shared.release.exec.InvokerMavenExecutor -  @ ```


the strange part is when i use mvn clean install like in development in master branch code , it gives no problem but it is releasing snapshot.jar .

My release plugin has some issue , i dont know what 

my goal is when running from development branch it should create snapshot.jar and when i run from master branch it should create <application>_release_version.jar .

any help much appreciated

  - task: ArtifactoryMaven@2
    inputs:
#      mavenPomFile: '${{ parameters.layer }}/pom.xml'
#      goals: 'clean install'
      mavenPomFile: 'pom_azure.xml'
      goals: 'release:prepare release:perform'
     
#      options: '-U -DlocalCheckout=true -Dresume=false --batch-mode -Dtag=v1.0.0 -DreleaseVersion=1.0.0 -DdevelopmentVersion=2.0.0-SNAPSHOT Dusername=Personal%20Access%20Token -Dpassword=11c9decb81845396ecbd4bc8f09521e73077bbbf'
      options: '-B -DpushChanges=false -DlocalCheckout=true -Dresume=false --batch-mode  -DreleaseVersion=${{ parameters.release_ver }} -DdevelopmentVersion=${{ parameters.release_ver }}-SNAPSHOT'
      artifactoryResolverService: 'xxxx'
      targetResolveReleaseRepo: 'aaa-maven-virtual'
      targetResolveSnapshotRepo: 'aaa-maven-virtual'
      artifactoryDeployService: 'xxxx'
      targetDeployReleaseRepo: 'aaa-main-maven-releases'
      targetDeploySnapshotRepo: 'bbb-main-maven-snapshots'
      collectBuildInfo: true
      buildName: '$(Build.DefinitionName)'
      buildNumber: '$(Build.BuildNumber)'
    displayName: 'Maven Release'

标签: mavenazure-devopsmaven-plugin

解决方案


推荐阅读