当我使用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>
答案 0 :(得分:0)
考虑从 pmd.xml 中删除不需要的规则。例如,如果您不想标记“未使用的修饰符”,请删除“未使用的修饰符”规则。
如果您只想抑制特定事件,可以在 pmd.xml 中将抑制指定为documented here。
例如,要禁止报告未使用的特定命名参数:
<rule ref="rulesets/unusedcode.xml/UnusedFormalParameter">
<property name="violationSuppressRegex" value=".*'mySpecialParamName'.*"/>
</rule>