私のバージョン:
- Maven 3.0.4
- ジェンキンス1.499
- Nexus 2.2
- maven-release-plugin 3.2
- jdk 1.6
- AIX 6.1
settings.xml
<server>
<id>snapshots</id>
<username>deploy</username>
<password>pass123</password>
</server>
<server>
<id>releases</id>
<username>deploy</username>
<password>pass123</password>
</server>
maven deploy
プラグインを使用してアーティファクトをNexusリポジトリにアップロードするビルドをJenkinsで実行しています。同じユーザーがスナップショットを展開できるため、Nexusでのユーザーの役割/権限の問題を排除できます。(私はまだテストのためにこのユーザーに管理者の役割を与えました)
会社の親POM
<distributionManagement>
<repository>
<id>releases</id>
<url>http://myserver/repositories/releases</url>
<layout>default</layout>
</repository>
<snapshotRepository>
<id>snapshots</id>
<url>http://myserver/repositories/snapshots</url>
<layout>default</layout>
</snapshotRepository>
</distributionManagement>
プロジェクトPOM
<scm>
<connection>scm:svn:http://svnserver/tags/1.2.3</connection>
<developerConnection>scm:svn:http://svnserver/tags/1.2.3</developerConnection>
</scm>
/target/checkout/
Jenkinsワークスペースのに最新のPOMが含まれていることを確認しました。<distributionManagement>
プロジェクトPOM内にも追加
今、mvnrelease:perform
を使用してJenkins内からmavenリリースプラグインを実行すると、まだこれを取得しています:
Deployment failed: repository element was not specified in the POM inside
distributionManagement element or in -DaltDeploymentRepository=id::layout
::url parameter
release:prepare
エラーは表示されません- SVNタグは期待どおりに作成されます
- 次に、デプロイ中に、上記のエラーで失敗します
- 前述したように、スナップショットの展開は頻繁にエラーなしで行われるため、settings.xml、distributionManagement、およびNexusのアクセス許可はすべて正常に機能しているようです。
http://myserver/repositories/releases
手動でアクセスできます- 私はチェックしました
mvn help:effective-pom
、mvn help:effective-settings
そして物事は順調に見えます
何か案は ?