web-dev-qa-db-ja.com

Nexusはアップロードを受け入れますが、失敗したと言います

親POMでmvn release:performを実行すると、サーバーが子プロジェクトの1つ(編集されたファイル名)に関するこのエラーで応答します。

[エラー]プロジェクトで目標org.Apache.maven.plugins:maven-deploy-plugin:2.7:deploy-file(default-cli)を実行できませんでした:アーティファクトをデプロイできませんでした:アーティファクトをリポジトリーに転送できませんでした:に失敗しました転送ファイル。戻りコードは400、ReasonPhrase:不正なリクエストです。

ただし、この子プロジェクトのすべてのファイルは正常にアップロードされました。 (リリースバージョン番号にちなんで名前が付けられた)新しいディレクトリが表示され、そこにはすべての.jar、.pom、.md5、および.sha1ファイルが含まれています。

Nexusサーバーにアクセスできませんが、何が原因で、どのように修正するのでしょうか。 Mavenがこの特定の子プロジェクトを2回アップロードしようとしている可能性はありますか?もしそうなら、なぜMavenはこれをしているのですか、どうすればそれを止めることができますか?

UPDATE:同じ問題が発生している場合は、 この投稿 で最も賛成票の多い回答を確認してください。 mvn help:effective-pomを実行したところ、問題のプロジェクトには実際にデプロイフェーズが2回実行されていることがわかりました。これらの実行の1つを削除すると、問題が解決しました。

22
Rob Johansen

maven マルチモジュールプロジェクトをリリースして、同じ問題が発生しました。初めてエラーが発生しましたが、デプロイの目標は既に nexus に連絡してから適切なパスを作成していました。 「リリース」リポジトリが追記型であると仮定すると、2回目にトリガーしたとき、パスの上書きを拒否します nexus

そのため、そのような場合は、リポジトリを削除するか、新しいリリースを作成するように管理者に依頼することができます。

PS:遅くなるよりも遅くなる;)

3
Jean-Rémy Revy