根据doc,对于< archetypeVersion>没有默认值.
因此,当我执行mvn archetype:generate并选择一个原型时,它的许多版本可能存在于存储库中.将选择哪个?
范例:
在信息库-https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/archetype-catalog.xml中,基本上有2个原型,每个原型有2个版本.
最佳答案
在元数据中,您应该能够指定发行版本,这是快速入门的示例:
cat /cygdrive/c/Users/G01103266/.m2/repository/org/apache/maven/archetypes/maven-archetype-quickstart/maven-Metadata-central.xml
<?xml version="1.0" encoding="UTF-8"?>
<Metadata>
<groupId>org.apache.maven.archetypes</groupId>
<artifactId>maven-archetype-quickstart</artifactId>
<versioning>
<latest>1.4</latest>
<release>1.4</release>
<versions>
<version>1.0-alpha-1</version>
<version>1.0-alpha-2</version>
<version>1.0-alpha-3</version>
<version>1.0-alpha-4</version>
<version>1.0</version>
<version>1.1</version>
<version>1.3</version>
<version>1.4</version>
</versions>
<lastUpdated>20181213005348</lastUpdated>
</versioning>
</Metadata>
在本地存储库或Nexus / Artifactory中,您可能会有一个archetype-catalog.xml,它将定义允许的版本,供您选择,其中here是Maven Central的版本.
如果目录中未提及原型,则版本默认为1.0.
如果有多个版本,它将要求您选择一个版本并默认发布.
我使用以下脚本创建测试项目
mvn archetype:generate -DarchetypeGroupId=org.apache.maven.archetypes -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=RELEASE
将使用1.4版