diff options
author | Michael Lando <ml636r@att.com> | 2017-08-31 10:50:16 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@onap.org> | 2017-08-31 10:50:16 +0000 |
commit | f114c70eb7611aad29550711dfa6c7f0accb3372 (patch) | |
tree | 4a96b1432e6b1f3050a8ab6dec61eeef2cd4f808 /build-tools/src/main/resources | |
parent | 43f36d99f1ad4d0a84a6a03fe3861cdadd952790 (diff) | |
parent | 09d4f069e48a0b4ab7359bbcc3b299d222721230 (diff) |
Merge "Set up static analysis for on-boarding"
Diffstat (limited to 'build-tools/src/main/resources')
-rw-r--r-- | build-tools/src/main/resources/build-pmd-ruleset.xml | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/build-tools/src/main/resources/build-pmd-ruleset.xml b/build-tools/src/main/resources/build-pmd-ruleset.xml new file mode 100644 index 0000000000..dd8984a970 --- /dev/null +++ b/build-tools/src/main/resources/build-pmd-ruleset.xml @@ -0,0 +1,42 @@ +<?xml version="1.0"?> +<ruleset name="SDC Essential Rule-set" + 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 http://pmd.sourceforge.net/ruleset/2.0.0 "> + + <description> + Essential rules according to SonarQube. Note that it is impossible to make PMD rules exactly match the + SonarQube ones, but they will probably catch about 90% of violations before they get into the source control. + The advantage is that PMD can be ran locally on any development setup and does not require a license. + </description> + + <!-- + All available Java rule-sets: https://pmd.github.io/pmd-5.6.1/pmd-java/rules/index.html + --> + + <!-- Blocker severity in SonarQube --> + <rule ref="rulesets/java/strictexception.xml/AvoidCatchingThrowable"/> + <rule ref="rulesets/java/empty.xml/EmptyCatchBlock"> + <properties> + <property name="allowCommentedBlocks" value="true"/> + </properties> + </rule> + + <!-- THERE IS NO GOOD RULE TO CATCH NULL DEREFERENCING IN PMD --> + <rule ref="rulesets/java/basic.xml/MisplacedNullCheck"/> + <rule ref="rulesets/java/basic.xml/BrokenNullCheck"/> + + + <rule ref="rulesets/java/design.xml/CloseResource"> + <properties> + <property name="types" + value="java.sql.Connection,java.sql.Statement,java.sql.ResultSet,java.io.OutputStream,java.net.URLConnection,java.io.InputStream,java.io.FileInputStream,java.io.FileOutputStream,java.util.zip.ZipOutputStream,java.util.zip.ZipInputStream,java.util.jar.JarInputStream,java.util.jar.JarOutputStream,java.io.BufferedReader,java.io.BufferedWriter"/> + </properties> + </rule> + <rule ref="rulesets/java/basic.xml/OverrideBothEqualsAndHashcode"/> + + <!-- + Critical severity in SonarQube. Should be empty until all Critical have been fixed. + --> + +</ruleset>
\ No newline at end of file |