Maven 原型不替换模块目录名称的属性
Maven archetype not substituting properties for module directory name
我创建了一个多模块项目的原型,我的目的是用所需的 属性 __implementation__
替换目录名称。结果是 __rootArtifactId__
被替换,但 __impelementation__
没有被替换。
原型-metadata.xml:
<module id="${rootArtifactId}-${implementation}-impl" dir="__rootArtifactId__-__implementation__-impl" name="${rootArtifactId}-${implementation}-impl">
<fileSets>
<fileSet filtered="true" packaged="true" encoding="UTF-8">
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8">
<directory></directory>
<includes>
<include>pom.xml</include>
</includes>
</fileSet>
</fileSets>
</module>
属性:
artifactId=basic
implementation=foo
结果目录: basic-__implementationName__-impl
替换发生在:pom.xml 和 *.java,但目录有问题
有没有办法让原型使用目录名称的属性?
针对这个问题,我做了以下操作:
通过git
克隆了 maven-archetype 源代码
git clone --branch maven-archetype-2.4 https://git-wip-us.apache.org/repos/asf/maven-archetype.git
执行了这里提到的修改ARCHETYPE-455
在 maven-archetype 项目上执行了 maven 安装(一些单元测试不起作用)
mvn install -DskipTests
之后,目录名被正确替换。
我创建了一个多模块项目的原型,我的目的是用所需的 属性 __implementation__
替换目录名称。结果是 __rootArtifactId__
被替换,但 __impelementation__
没有被替换。
原型-metadata.xml:
<module id="${rootArtifactId}-${implementation}-impl" dir="__rootArtifactId__-__implementation__-impl" name="${rootArtifactId}-${implementation}-impl">
<fileSets>
<fileSet filtered="true" packaged="true" encoding="UTF-8">
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet filtered="true" encoding="UTF-8">
<directory></directory>
<includes>
<include>pom.xml</include>
</includes>
</fileSet>
</fileSets>
</module>
属性:
artifactId=basic
implementation=foo
结果目录: basic-__implementationName__-impl
替换发生在:pom.xml 和 *.java,但目录有问题
有没有办法让原型使用目录名称的属性?
针对这个问题,我做了以下操作:
通过git
克隆了 maven-archetype 源代码git clone --branch maven-archetype-2.4 https://git-wip-us.apache.org/repos/asf/maven-archetype.git
执行了这里提到的修改ARCHETYPE-455
在 maven-archetype 项目上执行了 maven 安装(一些单元测试不起作用)
mvn install -DskipTests
之后,目录名被正确替换。