【发布时间】:2013-03-08 11:03:57
【问题描述】:
当我构建项目时,我正在尝试从Ant 在Eclipse 中运行PMD。
这是我的 build.xml 文件:
<taskdef name="pmd" classname="net.sourceforge.pmd.ant.PMDTask"/>
<target name="check_pmd">
<pmd rulesetfiles="C:\Users\Nikolay\ProjectName\lib\rulesets\java\basic.xml">
<formatter type="html" toFile="pmd_report.html" toConsole="true"/>
<fileset dir="C:\Users\Nikolay\ProjectName\src">
<include name="**/*.java"/>
</fileset>
</pmd>
</target>
它适用于 basic.xml,但我想运行 java 文件夹中的所有规则集(它有大约 20 个规则集)所以我试过了:
<pmd rulesetfiles="C:\Users\Nikolay\ProjectName\lib\rulesets\java\*.xml">
<pmd rulesetfiles="C:\Users\Nikolay\ProjectName\lib\rulesets\java\*">
但是当我尝试运行时它们都失败了。 有没有办法在不手动指定文件列表的情况下指定文件夹,而不是单个文件?
供以后的读者在Eclipse下配置Ant PMD:
- 从官网下载
pmd-bin.zip - 解压
pmd.jar、jaxen.jar和asm.jar - 将上面的 jars 添加到 Window - Preferences - Ant - Runtime - Ant Home Entries - Add External JARs
- 解压
rulesets文件夹 - 来自
<pmd rulesetfiles=...>的规则集参考位置
【问题讨论】: