5

任何人都知道是否可以requredProperty在 archetype-metadata.xml 中将默认值替换为另一个?

所以,我尝试做这样的事情:

<requiredProperty key="name"/>
<requiredProperty key="groupId">
   <defaultValue>com.mycompamy.${name}</defaultValue>
</requiredProperty>

但是当我开始在交互模式下从工件生成项目时,mavengroupId首先问我关于属性的问题。但不像name我预期的那样。

是否有可能改变这种行为?

4

1 回答 1

11

您的问题是由required property加载顺序引起的。Maven 按字母顺序加载每个自定义required property。你可能无法改变它。但是有两种方法可以解决您的问题:

  1. 像这样重命名你的变量:

    "0_name"

    "1_groupId"

    现在它会首先询问你的名字。

  2. 使用完整的 Maven 命令,仅传递名称参数

    mvn archetype:generate -DarchetypeGroupId=?? -DarchetypeArtifactId=?? -DgroupId=?? -DartifactId=?? -Dversion=?? -Dpackage=?? -Dname=??

    替换??为有效参数

希望它会帮助你。

编辑:现在我看到一个asked time. 相当离题,但也许它会帮助别人

于 2014-08-25T11:10:05.437 回答