我遇到了一个关于我的一个强制执行者自定义规则配置的问题。
我的POM文件中的插件配置如下所示:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>1.3.1</version>
<executions>
<execution>
<id>enforce</id>
<phase>validate</phase>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<uTF8Rule implementation="com.mavenrules.utf8validator.UTF8Rule">
<validationPath>${basedir}</validationPath>
</uTF8Rule>
</rules>
</configuration>
</execution>
</executions>
</plugin>
已在父POM中声明对规则的依赖性。
我想要的是能够将Paths的列表/数组指定为“uTF8Rule”的属性,而不仅仅是一个简单的变量。 (我希望POM负责我的规则适用的路径,而不是将规则配置为搜索我的基础内的各种路径)
我无法找到有关规则属性类型的参考/文档。
所需的输出类似于:
<configuration>
<rules>
<uTF8Rule implementation="com.mavenrules.utf8validator.UTF8Rule">
<listOfPaths>
<path1>xxx</path1>
<path2>yyy</path2>
</listOfPaths>
</uTF8Rule>
</rules>
</configuration>
欢迎任何想法。
提前致谢!
答案 0 :(得分:1)
配置中的对象遵循JavaBean / pojo约定。 所以在这种情况下:
public class com.mavenrules.utf8validator.UTF8Rule {
private List<String> listOfPaths; // or String[]
}
这应该已经足够了,但是有点无用。通过添加一个getter和setter你应该没问题。 如果我正确调用某些版本,无法启动列表或数组,但您也可以自己做。