Я использую Maven 3.2.1 и maven-archetype-plugin 3.0.1 в Windows 10.
Я развернул архетип в своем хранилище и определил его в settings.xml
, но архетип не найден.
<repositories>
<repository>
<id>archetype</id>
<url>https://mydomain/repos</url>
</repository>
</repositories>
Результат выполнения следующий.
DOS> mvn archetype:generate \
-DarchetypeGroupId=my.sample \
-DarchetypeArtifactId=some-archetype \
-DarchetypeVersion=1.0.0 -DgroupId=sample \
-DartifactId=sampleartifact -Dversion=1.0.0
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:3.0.1:generate (default-cli) on project standalone-pom: The desired archetype does not exist (my.sample:some-archetype:1.0.0) -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:3.0.1:generate (default-cli) on project standalone-pom: The desired archetype does not exist (my.sample:some-archetype:1.0.0)
Тем не менее, указание профиля работает нормально.
<profiles>
<profile>
<id>myprofile</id>
<repositories>
<repository>
<id>archetype</id>
<url>https://mydomain/repos</url>
</repository>
</repositories>
</profile>
</profiles>
Это работает, как и ожидалось, только добавив "-P myprofile".
DOS> mvn archetype:generate \
...
-P myprofile
Я всегда хочу расставить приоритеты в своем хранилище, но нужно ли каждый раз указывать профиль?