【问题标题】:PMD in eclipse does not accept exclude-patterneclipse中的PMD不接受排除模式
【发布时间】:2013-11-23 13:11:42
【问题描述】:

我在 eclipse 4.3.1 / Kepler 下使用 PMD,我无法从违规检查中排除文件和文件夹。

我的文件夹结构

/any/path/to/the/workspace/myproject1
/any/path/to/the/workspace/myproject2
/any/path/to/the/workspace/myprojectWithPMDrulesFile/pmd-rules.xml

现在以下文件夹由 testng 生成

...../myproject1/test-output
...../myproject2/test-output

现在我已经配置了以下规则文件:

<?xml version="1.0" encoding="UTF-8"?>
<ruleset xmlns="http://pmd.sourceforge.net/ruleset/2.0.0"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     name="Xeno-PMD-rules"
     xsi:schemaLocation="http://pmd.sourceforge.net/ruleset/2.0.0 http://pmd.sourceforge.net/ruleset_2_0_0.xsd">
    <description>PMD Plugin preferences rule set</description>
    <exclude-pattern>.*/test-output/*.*</exclude-pattern>
    <exclude-pattern>/.*/test-output/.*</exclude-pattern>
    <exclude-pattern>**/test-output/**</exclude-pattern>
    <exclude-pattern>./test-output/.</exclude-pattern>
    <rule ref="rulesets/java/android.xml/CallSuperFirst"/>
    ...
</ruleset>

在我的例子中,我在测试输出中的 jquery.js 文件中有数百个错误。

如何递归排除特定文件夹及其中的所有文件?

如何设置模式在eclipse下和ANT/maven下工作?

提示:似乎类似于:PMD exclude not working

【问题讨论】:

    标签: eclipse pmd


    【解决方案1】:

    你几乎已经得到它了!使用以下排除语法:

    <exclude-pattern>.*/test-output/.*</exclude-pattern>
    

    这将排除在其绝对路径中某处具有/test-output/ 的所有文件。该模式在 Eclipse 和 Ant/Maven 中是相同的,只要排除的文件夹也称为 test-output

    更多的解释和例子可以在PMD documentation找到。

    【讨论】:

      【解决方案2】:

      你可以创建一个working set,只包含你想要的目录和文件,并在 Project -> Properties -> PMD 下设置它

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-07-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多