すべてのアーティファクトが必要なため、settings.xmlに3つのリポジトリがあります。依存関係が見つからないときはいつでも、Mavenは
Downloading: http://some.server/mvn2repo/releases/org/Apache/lucene/lucene-core/2.9.1/...
[INFO] Unable to find resource 'org.Apache.lucene:lucene-core:pom:2.9.1' in repository
Downloading: http://some.server/mvn2repo/3rdParty/org/Apache/lucene/lucene-core/2.9.1/...
[INFO] Unable to find resource 'org.Apache.lucene:lucene-core:pom:2.9.1' in repository
Downloading: http://repo1.maven.org/maven2/org/Apache/lucene/lucene-core/2.9.1/lucene-core-2.9.1.pom
<success>
すべてのリポジトリですが、ほとんどの場合、もちろん中央(repo1)でアーティファクトが見つかります。 Mavenにこのレポを最初に確認してほしい。 settings.xmlで宣言の順序を試しましたが、うまくいきませんでした。 fgysinによると、逆の順序も試しましたが、何も変わりませんでした。
私のMavenバージョン:
C:\>mvn -v
Apache Maven 2.2.1 (r801777; 2009-08-06 21:16:01+0200)
Java version: 1.6.0_15
Java home: C:\Program Files\Java\jdk1.6.0_15\jre
Default locale: de_AT, platform encoding: Cp1252
OS name: "windows Vista" version: "6.0" Arch: "AMD64" Family: "windows"
僕の settings.xml
<profiles>
<profile>
<id>space</id>
<repositories>
<repository>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>s1-releases</id>
<name>System One Releases</name>
<url>http://some.server/mvn2repo/releases</url>
</repository>
<repository>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>s1-3rdParty</id>
<name>System One 3rd Party Releases</name>
<url>http://some.server/mvn2repo/3rdParty</url>
</repository>
<repository>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
<id>central</id>
<url>http://repo1.maven.org/maven2</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
<id>central</id>
<url>http://repo1.maven.org/maven2</url>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>space</activeProfile>
</activeProfiles>
私の知る限り、pom.xml内のリポジトリの順序もリポジトリアクセスの順序を決定します。
Settings.xmlでリポジトリを構成することに関しては、リポジトリの順序が興味深いことに、リポジトリへのアクセス方法のinverseの順序で十分だと読みました。
ここで、誰かがこの好奇心を説明する投稿:
http://community.jboss.org/message/576851
私の場合、これらの答えはどれも正しくありませんでした。順序は、任意の文字列である<id>タグのアルファベット順に依存しているようです。したがって、この強制的なリポジトリ検索順序:
<repository>
<id>1_maven.Apache.org</id>
<releases> <enabled>true</enabled> </releases>
<snapshots> <enabled>true</enabled> </snapshots>
<url>https://repo.maven.Apache.org/maven2</url>
<layout>default</layout>
</repository>
<repository>
<id>2_maven.Oracle.com</id>
<releases> <enabled>true</enabled> </releases>
<snapshots> <enabled>false</enabled> </snapshots>
<url>https://maven.Oracle.com</url>
<layout>default</layout>
</repository>
また、Nexusなどのリポジトリマネージャーを使用して、すべてのリポジトリを構成することを検討してください。