我正在为我的项目使用PMD maven插件,并且看到了非常奇怪的行为。以下pom.xml配置因basic.xml中的违规而使构建失败-
<configuration>
<rulesets>
<ruleset>${project.basedir}\ruleset\basic.xml</ruleset>
<!-- ruleset>${project.basedir}\ruleset\braces.xml</ruleset>
<ruleset>${project.basedir}\ruleset\design.xml</ruleset>
<ruleset>${project.basedir}\ruleset\controversial.xml</ruleset>
<ruleset>${project.basedir}\ruleset\coupling.xml</ruleset>
<ruleset>${project.basedir}\ruleset\clone.xml</ruleset>
<ruleset>${project.basedir}\ruleset\comments.xml</ruleset-->
</rulesets>
</configuration>
但是下面的一个顺利通过构建-
<configuration>
<rulesets>
<ruleset>${project.basedir}\ruleset\basic.xml</ruleset>
<ruleset>${project.basedir}\ruleset\braces.xml</ruleset>
<ruleset>${project.basedir}\ruleset\design.xml</ruleset>
<ruleset>${project.basedir}\ruleset\controversial.xml</ruleset>
<ruleset>${project.basedir}\ruleset\coupling.xml</ruleset>
<ruleset>${project.basedir}\ruleset\clone.xml</ruleset>
<ruleset>${project.basedir}\ruleset\comments.xml</ruleset>
</rulesets>
</configuration>
在第二种情况下,构建也应该失败。根据我所注意到的,如果最后一条规则(在上面的示例comment.xml中)没有违反任何代码,则即使之上的任何规则集(basic.xml,braces.xml等),构建也不会中断。 )有违反代码的行为。我无法理解这种行为背后的原因。有人可以帮我这个忙吗?
最佳答案
我发现了问题。 Maven插件版本3.3存在问题。现在我正在使用版本3.1,并且完全相同的代码正在按预期工作。