Set up a customized configuration for PMD.
This commit is contained in:
parent
3e0ffb9f52
commit
1f6c125267
|
@ -0,0 +1,73 @@
|
|||
<?xml version="1.0"?>
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed with
|
||||
this work for additional information regarding copyright ownership.
|
||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<ruleset name="commons-math-customized"
|
||||
xmlns="http://pmd.sourceforge.net/ruleset/2.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://pmd.sourceforge.net/ruleset/2.0.0 http://pmd.sourceforge.net/ruleset_2_0_0.xsd">
|
||||
<description>
|
||||
This ruleset checks the code for discouraged programming constructs.
|
||||
</description>
|
||||
|
||||
<rule ref="rulesets/java/basic.xml"/>
|
||||
|
||||
<rule ref="rulesets/java/braces.xml"/>
|
||||
|
||||
<rule ref="rulesets/java/comments.xml">
|
||||
<exclude name="CommentSize"/>
|
||||
</rule>
|
||||
<rule ref="rulesets/java/comments.xml/CommentSize">
|
||||
<properties>
|
||||
<property name="maxLines" value="200"/>
|
||||
<property name="maxLineLength" value="256"/>
|
||||
</properties>
|
||||
</rule>
|
||||
|
||||
<rule ref="rulesets/java/empty.xml"/>
|
||||
|
||||
<rule ref="rulesets/java/finalizers.xml"/>
|
||||
|
||||
<rule ref="rulesets/java/imports.xml"/>
|
||||
|
||||
<rule ref="rulesets/java/typeresolution.xml">
|
||||
<!-- TODO: we should reactivate this rule -->
|
||||
<exclude name="CloneMethodMustImplementCloneable"/>
|
||||
</rule>
|
||||
|
||||
<!-- TODO: we should reactivate this ruleset -->
|
||||
<!-- <rule ref="rulesets/java/clone.xml"/> -->
|
||||
|
||||
<rule ref="rulesets/java/unnecessary.xml">
|
||||
|
||||
<!-- In many places in Apache Commons Math, there are complex boolean expressions.
|
||||
We do use extra parentheses there as most people do not recall operator precedence,
|
||||
this means even if the parentheses are useless for the compiler, we don't consider
|
||||
them useless for the developer. This is the reason why we disable this rule. -->
|
||||
<exclude name="UselessParentheses"/>
|
||||
|
||||
<!-- At several places in the optimization package, we set up public "optimize" methods
|
||||
that simply call their base class optimize method. This is intentional and allows
|
||||
to update the javadoc and make sure the additional parameters implemented at the
|
||||
lower class level are properly documented. These new parameters are really taken
|
||||
into accound despite we merely call super.optimize because the top level optimze
|
||||
methods call a protected parseOptimizationData method implemented in the specialized
|
||||
class. This is the reason why we disable this rule. -->
|
||||
<exclude name="UselessOverridingMethod"/>
|
||||
|
||||
</rule>
|
||||
|
||||
</ruleset>
|
8
pom.xml
8
pom.xml
|
@ -471,6 +471,10 @@
|
|||
<version>${math.pmd.version}</version>
|
||||
<configuration>
|
||||
<targetJdk>${maven.compiler.target}</targetJdk>
|
||||
<skipEmptyReport>false</skipEmptyReport>
|
||||
<rulesets>
|
||||
<ruleset>${basedir}/pmd-ruleset.xml</ruleset>
|
||||
</rulesets>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
|
@ -671,6 +675,10 @@
|
|||
<version>${math.pmd.version}</version>
|
||||
<configuration>
|
||||
<targetJdk>${maven.compiler.target}</targetJdk>
|
||||
<skipEmptyReport>false</skipEmptyReport>
|
||||
<rulesets>
|
||||
<ruleset>${basedir}/pmd-ruleset.xml</ruleset>
|
||||
</rulesets>
|
||||
</configuration>
|
||||
<reportSets>
|
||||
<reportSet>
|
||||
|
|
Loading…
Reference in New Issue