在maven中使用属性archetypeVersion有什么用?

时间:2016-11-10 23:22:14

标签: java maven maven-archetype

我正在使用maven-archetype-quickstart创建一个简单的项目来学习Maven。我找到了一个名为archetypeVersion的属性,其默认值为RELEASE。我想知道此属性的用途以及除RELEASE之外还包含的其他可能值。

1 个答案:

答案 0 :(得分:0)

Maven有一个独特的项目标识符,基本上是三件事的组合

  1. 伪影
  2. 版本
  3. 因此,archetypeVersion是您在创建项目时进入版本的值。

    例如,group:artifact:version的组合将是

    com.test.example:myexample:1.0-SNAPSHOT
    

    大多数项目按惯例使用以下版本控制系统

    1. 快照
    2. RELEASE-CANDIDATE或RC
    3. RELEASE
    4. 此版本的值可以是任何值,上述值是通常的惯例。

      SNAPSHOT通常表示您正在处理的最新版本的代码,通常只进行单元测试,有时甚至不是。

      RELEASE-CANDIDATE通常是供用户进行验收测试的东西。

      RELEASE,你可以猜到是可以在PROD中部署的最终版本。

      因此,如果您正在运行以下命令

      mvn archetype:generate                                  \
        -DarchetypeGroupId=<archetype-groupId>                \
        -DarchetypeArtifactId=<archetype-artifactId>          \
        -DarchetypeVersion=<archetype-version>                \
        -DgroupId=<my.groupid>                                \
        -DartifactId=<my-artifactId>
      

      您必须在<archetype-version>

      中放置您希望项目拥有的版本