我想在PMD中跳过警告

时间:2014-04-07 12:22:26

标签: pmd

当我使用teamcity在我的PMD Report中运行target/pmd.xml时,我得到以下内容

现在我想跳过以下警告"Unused Code"。那我怎么能这样做呢?

目前构建失败,当我用Google搜索时,我有一个选项,我可以使用

注释@Suppress warnings(但我想从我的maven目标中跳过这些警告

本身,有没有像跳过警告这样的目标?或类似的东西)

<?xml version="1.0" encoding="UTF-8"?>
<pmd version="5.0.2" timestamp="2014-04-07T07:41:55.431">
<file name="/home/herc/teamcity/TeamCity/buildAgent/work/c2f0847f19a6b00d/src/main/java/com/ga/gameon/db/IapDAO.java">
<violation beginline="16" endline="16" begincolumn="16" endcolumn="61" rule="UnusedModifier" ruleset="Unused Code" package="com.ga.gameon.db" class="IapDAO" externalInfoUrl="http://pmd.sourceforge.net/pmd-5.0$
Avoid modifiers which are implied by the context
</violation>
<violation beginline="17" endline="17" begincolumn="16" endcolumn="56" rule="UnusedModifier" ruleset="Unused Code" package="com.ga.gameon.db" class="IapDAO" externalInfoUrl="http://pmd.sourceforge.net/pmd-5.0$
Avoid modifiers which are implied by the context
</violation>
</file>
<file name="/home/herc/teamcity/TeamCity/buildAgent/work/c2f0847f19a6b00d/src/main/java/com/ga/gameon/service/IapService.java">
<violation beginline="18" endline="18" begincolumn="16" endcolumn="83" rule="UnusedModifier" ruleset="Unused Code" package="com.ga.gameon.service" class="IapService" externalInfoUrl="http://pmd.sourceforge.ne$
Avoid modifiers which are implied by the context
</violation>
<violation beginline="20" endline="20" begincolumn="16" endcolumn="76" rule="UnusedModifier" ruleset="Unused Code" package="com.ga.gameon.service" class="IapService" externalInfoUrl="http://pmd.sourceforge.ne$
Avoid modifiers which are implied by the context
</violation>
</file>
<file name="/home/herc/teamcity/TeamCity/buildAgent/work/c2f0847f19a6b00d/src/main/java/com/ga/gameon/service/IapServiceImpl.java">

</file>
</pmd>

1 个答案:

答案 0 :(得分:0)

考虑从 pmd.xml 中删除不需要的规则。例如,如果您不想标记“未使用的修饰符”,请删除“未使用的修饰符”规则。

如果您只想抑制特定事件,可以在 pmd.xml 中将抑制指定为documented here

例如,要禁止报告未使用的特定命名参数:

<rule ref="rulesets/unusedcode.xml/UnusedFormalParameter">
    <property name="violationSuppressRegex" value=".*'mySpecialParamName'.*"/>
</rule>