1

文書化が不十分なソフトウェアをライブラリとして使用しようとしています。Webサイトには、依存関係のアーティファクトIDがリストされていましたが、そのうちの1つが削除されたと思います。

mvn compileコマンド(私のプロジェクトでは、他の依存関係を使用)依存関係の1つに対して次のエラーが発生します。

[INFO] Scanning for projects...
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building <my software> 0.1
[INFO] ------------------------------------------------------------------------
[WARNING] The POM for <my dependency> no dependency information available
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.426s
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project <my project>: Could not resolve dependencies for project <my project>: Failure to find <my dependency> in http://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced -> [Help 1]

インターネットで検索すると、Mavenはデフォルトでibiblio.orgの世界規模の集中リポジトリを使用していることがわかりましたが、使用している可能性はほとんどありません。

彼らは私をサポートしていないので、私は彼らのものを通して私の方法を見つける必要があります、それで私の質問は:Mavenリポジトリを公開する標準的な方法はありますか?

たとえば、groupId(通常は形式org.example.something)に関連付けられたルックアップシステムはありますか?


関連する質問: Maven-アーティファクトを公開する方法/場所

4

1 に答える 1

4

Mavenがアーティファクトを取得するデフォルトの場所はMavenCentralですが、ibiblio.orgMaven Centralのミラーにすぎません(リポジトリガイドを参照)。リポジトリガイドを参照してください。

さらに、groupIdとMavenリポジトリの間に関係はありません。最善の方法は、MavenCentralでアーティファクトを検索することです。

それとは別に、ローカルリポジトリ(.m2 / repository /)の、要求されたアーティファクトが配置されている部分を削除する必要があります。取得したメッセージに基づいて、指定されたgroupId /ArtifactId/を持たないアーティファクトを取得しようとしたようです。バージョン座標。

このような問題を解決する最善の方法は、リポジトリマネージャをインストールし、必要なアーティファクトをリポジトリマネージャにインストールすることです。

一方、アーティファクトをMavenCentralにアップロードすることは実際には問題ではありません。

于 2012-12-15T22:47:12.723 に答える