PMD多规则集通过构建,但单个规则集无法构建

时间:2014-12-02 06:25:32

标签: java maven maven-plugin pmd

我正在为我的项目使用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>

构建应该在第二个场景中也失败了。根据我的注意,如果最后一条规则(在上面的例子中是comments.xml)没有任何代码违规,那么即使它上面的任何规则集(basic.xml,braces.xml等),构建也不会中断。 )有代码违规。我无法理解这种行为背后的原因。有人可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

我发现了这个问题。 Maven Plugin版本3.3存在问题。现在我使用的是3.1版本,完全相同的代码正在按预期工作。