プロジェクトのビルドにMaven3.0(nexusセットアップを使用)を使用していますが、ビルドに失敗します:
Caused by: org.sonatype.aether.transfer.ArtifactNotFoundException: Could not find artifact directory:apacheds-core:jar:${apacheds_version} in central (http://localhost:8081/nexus/content/repositories/central)
at org.sonatype.aether.connector.wagon.WagonRepositoryConnector$4.wrap(WagonRepositoryConnector.java:945)
at org.sonatype.aether.connector.wagon.WagonRepositoryConnector$4.wrap(WagonRepositoryConnector.java:940)
私の基本的な混乱は次のとおりです。mavenがpom.xmlに依存関係を見つけた場合、リモートリポジトリでアーティファクトを探すにはどうすればよいですか?
私の現在の理解は:
最初にローカルリポジトリ(.m2 / repository)を調べます。
そこに見つからない場合は、settings.xmlでリポジトリタグ の下に指定されているリポジトリを検索しようとします。質問:言及されているすべてのリポジトリを試しますか?または最初のものだけ?以下に5つのリポジトリについて説明しました。Mavenはこれらすべてを1つずつ検索しますか、それとも最初のリポジトリだけを検索しますか?
<repositories>
<repository>
<id>central</id>
<url>http://localhost:8081/nexus/content/repositories/central</url>
</repository>
<repository>
<id>remote</id>
<url>http://localhost:8081/nexus/content/repositories/remote-proxy-nexus-central</url>
</repository>
<repository>
<id>thirdParty</id>
<url>http://localhost:8081/nexus/content/repositories/thirdparty</url>
</repository>
<repository>
<id>codehaus</id>
<url>http://localhost:8081/nexus/content/repositories/codehaus-snapshots</url>
</repository>
<repository>
<id>public</id>
<url>http://localhost:8081/nexus/content/groups/public</url>
</repository>
</repositories>
私の最後の混乱は、settings.xmlのプロキシセクションについてです。これらの場所は何ですか:
<proxy>
<id>remote-proxy-nexus-central</id>
<active>true</active>
<protocol>http</protocol>
<host>repo1.maven.org/maven2</host>
<port>8080</port>
</proxy>