Zipファイルをリモートの社内Mavenリポジトリにデプロイしようとしています(ハドソンに統合されたArtifactory)。
pom.xml
...
<modelVersion>4.0.0</modelVersion>
<groupId>mygroupId</groupId>
<artifactId>myartifactid</artifactId>
<version>1.0-SNAPSHOT</version>
<distributionManagement>
<repository>
<id>hudson</id>
<name>hudson-releases</name>
<url>http://url to repo</url>
</repository>
</distributionManagement>
...
settings.xml
<servers>
<server>
<id>hudson</id>
<username>username</username>
<password>password</password>
</server>
</servers>
maven deploy
mvn deploy:deploy-file -Durl=http://url -Dfile=file-1.0.0.Zip -Dpackaging=Zip -DpomFile=pom.xml
mavenは戻りコード401で終了します。
artifactoryのログを見る
2011-07-15 13:52:50,090 [DENIED DEPLOY] libs-release-local:somefile.Zip for anonymous/192.168.220.146.
Mavenが提供された資格情報を使用しない理由がわかりません。ここで何が間違っているのですか?
何らかの理由でPOMファイルの使用が機能しませんでした。だから私はコマンドラインからそれをしなければなりませんでした。
mvn deploy:deploy-file -Durl=http://url -Dfile=file-1.0.0.Zip -Dpackaging=Zip -DartifactId=aid -DgroupId=groupId -DrepositoryId=repId -Dversion=1.0-SNAPSHOT
これがうまくいった理由はまだわかりません。また、私は以前にリストしたものからsettings.xmlを変更する必要はありませんでした。
[〜#〜]編集[〜#〜]
また、アーティファクトの[ホーム]タブで、[Maven設定]-> [設定の生成]をクリックしてMaven設定を取得できます。
平文パスワードの問題を解決するためのヒント:
Hudsonは、settings.xmlをキャッシュしている可能性が高いです。このURL http:// your-hudson-url:8081/hudson/reload を使用してディスクから構成を再ロードするか、Hudsonが実行されているコンテナーを再起動してください。私のために働いた。
何を着ているか確認することを忘れないでください<distributionManagement>
at your pom.xmlあなたのタグにあるものに対応。m2/settings.xml。
スナップショットバージョンを公開していますが、POMのdistributionManagementセクションでsnapshotRepositoryタグを指定していません。または、通常のバージョンを試してデプロイし、それが機能するかどうかを確認してください
Mavenはデフォルトでプリエンプティブ認証を使用するように設定されておらず、チャレンジ時にいくつかの問題があります。
MavenのHttpClient Wagonを構成してプリエンプティブ認証を実行することもできます(http://maven.Apache.org/guides/mini/guide-http-settings.html)。
Jenkins\Hudsonを使用しているので、Jenkins\Hudson-Artifactoryプラグインを確認することをお勧めします。
Maven設定の詳細を更新し、nexusの認証情報を追加します。
credentials: admin