Skip to content

Instantly share code, notes, and snippets.

@hicolour
Last active September 2, 2016 09:32
Show Gist options
  • Save hicolour/d3f0accb4614643b60be07e50ed0cdd9 to your computer and use it in GitHub Desktop.
Save hicolour/d3f0accb4614643b60be07e50ed0cdd9 to your computer and use it in GitHub Desktop.
PMD - exclude all default rules and tulesets
<rule ref="rulesets/java/basic.xml">
<exclude name="JumbledIncrementer"/>
<exclude name="ForLoopShouldBeWhileLoop"/>
<exclude name="OverrideBothEqualsAndHashcode"/>
<exclude name="DoubleCheckedLocking"/>
<exclude name="ReturnFromFinallyBlock"/>
<exclude name="UnconditionalIfStatement"/>
<exclude name="BooleanInstantiation"/>
<exclude name="CollapsibleIfStatements"/>
<exclude name="ClassCastExceptionWithToArray"/>
<exclude name="BrokenNullCheck"/>
<exclude name="BigIntegerInstantiation"/>
<exclude name="CheckResultSet"/>
<exclude name="AvoidMultipleUnaryOperators"/>
<exclude name="ExtendsObject"/>
<exclude name="CheckSkipResult"/>
<exclude name="AvoidBranchingStatementAsLastInLoop"/>
</rule>
<rule ref="rulesets/java/finalizers.xml">
<exclude name="EmptyFinalizer"/>
<exclude name="FinalizeOnlyCallsSuperFinalize"/>
<exclude name="FinalizeOverloaded"/>
<exclude name="FinalizeDoesNotCallSuperFinalize"/>
<exclude name="FinalizeShouldBeProtected"/>
<exclude name="AvoidCallingFinalize"/>
</rule>
<rule ref="rulesets/java/typeresolution.xml">
<exclude name="LooseCoupling"/>
<exclude name="CloneMethodMustImplementCloneable"/>
<exclude name="UnusedImports"/>
<exclude name="SignatureDeclareThrowsException"/>
</rule>
<rule ref="rulesets/java/controversial.xml">
<exclude name="UnnecessaryConstructor"/>
<exclude name="NullAssignment"/>
<exclude name="OnlyOneReturn"/>
<exclude name="AssignmentInOperand"/>
<exclude name="AtLeastOneConstructor"/>
<exclude name="DontImportSun"/>
<exclude name="SuspiciousOctalEscape"/>
<exclude name="CallSuperInConstructor"/>
<exclude name="UnnecessaryParentheses"/>
<exclude name="DefaultPackage"/>
<exclude name="BooleanInversion"/>
<exclude name="DataflowAnomalyAnalysis"/>
</rule>
<rule ref="rulesets/java/strings.xml">
<exclude name="AvoidDuplicateLiterals"/>
<exclude name="StringInstantiation"/>
<exclude name="StringToString"/>
<exclude name="InefficientStringBuffering"/>
<exclude name="UnnecessaryCaseChange"/>
<exclude name="UseStringBufferLength"/>
<exclude name="AppendCharacterWithChar"/>
<exclude name="ConsecutiveAppendsShouldReuse"/>
<exclude name="ConsecutiveLiteralAppends"/>
<exclude name="UseIndexOfChar"/>
<exclude name="InefficientEmptyStringCheck"/>
<exclude name="InsufficientStringBufferDeclaration"/>
<exclude name="UselessStringValueOf"/>
</rule>
<rule ref="rulesets/java/comments.xml">
<exclude name="CommentRequired"/>
<exclude name="CommentSize"/>
<exclude name="CommentContent"/>
</rule>
<rule ref="rulesets/java/unnecessary.xml">
<exclude name="UnnecessaryConversionTemporary"/>
<exclude name="UnnecessaryReturn"/>
<exclude name="UnnecessaryFinalModifier"/>
<exclude name="UselessOverridingMethod"/>
<exclude name="UnusedNullCheckInEquals"/>
<exclude name="UselessParentheses"/>
</rule>
<rule ref="rulesets/java/logging-jakarta-commons.xml">
<exclude name="UseCorrectExceptionLogging"/>
<exclude name="ProperLogger"/>
<exclude name="GuardDebugLogging"/>
<exclude name="GuardLogStatement"/>
</rule>
<rule ref="rulesets/java/logging-java.xml">
<exclude name="MoreThanOneLogger"/>
<exclude name="LoggerIsNotStaticFinal"/>
<exclude name="SystemPrintln"/>
<exclude name="GuardLogStatementJavaUtil"/>
</rule>
<rule ref="rulesets/java/android.xml">
<exclude name="CallSuperFirst"/>
<exclude name="CallSuperLast"/>
<exclude name="DoNotHardCodeSDCard"/>
</rule>
<rule ref="rulesets/java/rulesets.xml">
</rule>
<rule ref="rulesets/java/migrating_to_junit4.xml">
</rule>
<rule ref="rulesets/java/naming.xml">
<exclude name="ShortVariable"/>
<exclude name="LongVariable"/>
<exclude name="ShortMethodName"/>
<exclude name="VariableNamingConventions"/>
<exclude name="MethodNamingConventions"/>
<exclude name="ClassNamingConventions"/>
<exclude name="AbstractNaming"/>
<exclude name="AvoidDollarSigns"/>
<exclude name="MethodWithSameNameAsEnclosingClass"/>
<exclude name="SuspiciousHashcodeMethodName"/>
<exclude name="SuspiciousConstantFieldName"/>
<exclude name="SuspiciousEqualsMethodName"/>
<exclude name="AvoidFieldNameMatchingTypeName"/>
<exclude name="AvoidFieldNameMatchingMethodName"/>
<exclude name="NoPackage"/>
<exclude name="PackageCase"/>
<exclude name="MisleadingVariableName"/>
<exclude name="BooleanGetMethodName"/>
<exclude name="GenericsNaming"/>
</rule>
<rule ref="rulesets/java/j2ee.xml">
<exclude name="UseProperClassLoader"/>
<exclude name="DoNotCallSystemExit"/>
<exclude name="StaticEJBFieldShouldBeFinal"/>
</rule>
<rule ref="rulesets/java/clone.xml">
<exclude name="ProperCloneImplementation"/>
<exclude name="CloneThrowsCloneNotSupportedException"/>
<exclude name="CloneMethodMustImplementCloneable"/>
</rule>
<rule ref="rulesets/java/design.xml">
<exclude name="UseUtilityClass"/>
<exclude name="SimplifyBooleanReturns"/>
<exclude name="SwitchStmtsShouldHaveDefault"/>
<exclude name="AvoidDeeplyNestedIfStmts"/>
<exclude name="AvoidReassigningParameters"/>
<exclude name="SwitchDensity"/>
<exclude name="ConstructorCallsOverridableMethod"/>
<exclude name="AccessorClassGeneration"/>
<exclude name="FinalFieldCouldBeStatic"/>
<exclude name="CloseResource"/>
<exclude name="NonStaticInitializer"/>
<exclude name="DefaultLabelNotLastInSwitchStmt"/>
<exclude name="NonCaseLabelInSwitchStatement"/>
<exclude name="OptimizableToArrayCall"/>
<exclude name="BadComparison"/>
<exclude name="EqualsNull"/>
<exclude name="ConfusingTernary"/>
<exclude name="InstantiationToGetClass"/>
<exclude name="IdempotentOperations"/>
<exclude name="ImmutableField"/>
<exclude name="UseLocaleWithCaseConversions"/>
<exclude name="AvoidProtectedFieldInFinalClass"/>
<exclude name="AssignmentToNonFinalStatic"/>
<exclude name="MissingStaticMethodInNonInstantiatableClass"/>
<exclude name="AvoidSynchronizedAtMethodLevel"/>
<exclude name="MissingBreakInSwitch"/>
<exclude name="UseNotifyAllInsteadOfNotify"/>
<exclude name="AvoidInstanceofChecksInCatchClause"/>
<exclude name="AbstractClassWithoutAbstractMethod"/>
<exclude name="SimplifyConditional"/>
<exclude name="PositionLiteralsFirstInComparisons"/>
<exclude name="PositionLiteralsFirstInCaseInsensitiveComparisons"/>
<exclude name="UnnecessaryLocalBeforeReturn"/>
<exclude name="NonThreadSafeSingleton"/>
<exclude name="UncommentedEmptyMethod"/>
<exclude name="UncommentedEmptyConstructor"/>
<exclude name="AvoidConstantsInterface"/>
<exclude name="UnsynchronizedStaticDateFormatter"/>
<exclude name="PreserveStackTrace"/>
<exclude name="UseCollectionIsEmpty"/>
<exclude name="ClassWithOnlyPrivateConstructorsShouldBeFinal"/>
<exclude name="EmptyMethodInAbstractClassShouldBeAbstract"/>
<exclude name="SingularField"/>
<exclude name="TooFewBranchesForASwitchStatement"/>
<exclude name="UseVarargs"/>
<exclude name="FieldDeclarationsShouldBeAtStartOfClass"/>
<exclude name="GodClass"/>
<exclude name="AvoidProtectedMethodInFinalClassNotExtending"/>
</rule>
<rule ref="rulesets/java/optimizations.xml">
<exclude name="LocalVariableCouldBeFinal"/>
<exclude name="MethodArgumentCouldBeFinal"/>
<exclude name="AvoidInstantiatingObjectsInLoops"/>
<exclude name="UseArrayListInsteadOfVector"/>
<exclude name="SimplifyStartsWith"/>
<exclude name="UseStringBufferForStringAppends"/>
<exclude name="UseArraysAsList"/>
<exclude name="AvoidArrayLoops"/>
<exclude name="UnnecessaryWrapperObjectCreation"/>
<exclude name="AddEmptyString"/>
<exclude name="RedundantFieldInitializer"/>
<exclude name="PrematureDeclaration"/>
</rule>
<rule ref="rulesets/java/codesize.xml">
<exclude name="NPathComplexity"/>
<exclude name="ExcessiveMethodLength"/>
<exclude name="ExcessiveParameterList"/>
<exclude name="ExcessiveClassLength"/>
<exclude name="ExcessivePublicCount"/>
<exclude name="TooManyFields"/>
<exclude name="NcssMethodCount"/>
<exclude name="NcssTypeCount"/>
<exclude name="NcssConstructorCount"/>
</rule>
<rule ref="rulesets/java/strictexception.xml">
<exclude name="AvoidCatchingThrowable"/>
<exclude name="SignatureDeclareThrowsException"/>
<exclude name="ExceptionAsFlowControl"/>
<exclude name="AvoidCatchingNPE"/>
<exclude name="AvoidThrowingRawExceptionTypes"/>
<exclude name="AvoidThrowingNullPointerException"/>
<exclude name="AvoidRethrowingException"/>
<exclude name="AvoidThrowingNewInstanceOfSameException"/>
<exclude name="AvoidLosingExceptionInformation"/>
</rule>
<rule ref="rulesets/java/junit.xml">
<exclude name="JUnitStaticSuite"/>
<exclude name="JUnitSpelling"/>
<exclude name="JUnitAssertionsShouldIncludeMessage"/>
<exclude name="JUnitTestsShouldIncludeAssert"/>
<exclude name="TestClassWithoutTestCases"/>
<exclude name="UnnecessaryBooleanAssertion"/>
<exclude name="UseAssertEqualsInsteadOfAssertTrue"/>
<exclude name="UseAssertSameInsteadOfAssertTrue"/>
<exclude name="UseAssertNullInsteadOfAssertTrue"/>
<exclude name="SimplifyBooleanAssertion"/>
<exclude name="JUnitTestContainsTooManyAsserts"/>
<exclude name="UseAssertTrueInsteadOfAssertEquals"/>
</rule>
<rule ref="rulesets/java/imports.xml">
<exclude name="DuplicateImports"/>
<exclude name="DontImportJavaLang"/>
<exclude name="UnusedImports"/>
<exclude name="ImportFromSamePackage"/>
</rule>
<rule ref="rulesets/java/sunsecure.xml">
<exclude name="MethodReturnsInternalArray"/>
<exclude name="ArrayIsStoredDirectly"/>
</rule>
<rule ref="rulesets/java/empty.xml">
<exclude name="EmptyCatchBlock"/>
<exclude name="EmptyIfStmt"/>
<exclude name="EmptyWhileStmt"/>
<exclude name="EmptyTryBlock"/>
<exclude name="EmptyFinallyBlock"/>
<exclude name="EmptySwitchStatements"/>
<exclude name="EmptySynchronizedBlock"/>
<exclude name="EmptyStatementNotInLoop"/>
<exclude name="EmptyStatementBlock"/>
<exclude name="EmptyStaticInitializer"/>
</rule>
<rule ref="rulesets/java/migrating.xml">
<exclude name="ReplaceVectorWithList"/>
<exclude name="ReplaceHashtableWithMap"/>
<exclude name="ReplaceEnumerationWithIterator"/>
<exclude name="AvoidEnumAsIdentifier"/>
<exclude name="AvoidAssertAsIdentifier"/>
<exclude name="IntegerInstantiation"/>
<exclude name="ByteInstantiation"/>
<exclude name="ShortInstantiation"/>
<exclude name="LongInstantiation"/>
<exclude name="JUnit4TestShouldUseBeforeAnnotation"/>
<exclude name="JUnit4TestShouldUseAfterAnnotation"/>
<exclude name="JUnit4TestShouldUseTestAnnotation"/>
<exclude name="JUnit4SuitesShouldUseSuiteAnnotation"/>
<exclude name="JUnitUseExpected"/>
</rule>
<rule ref="rulesets/java/migrating_to_15.xml">
</rule>
<rule ref="rulesets/java/migrating_to_14.xml">
</rule>
<rule ref="rulesets/java/unusedcode.xml">
<exclude name="UnusedPrivateField"/>
<exclude name="UnusedLocalVariable"/>
<exclude name="UnusedPrivateMethod"/>
<exclude name="UnusedFormalParameter"/>
<exclude name="UnusedModifier"/>
</rule>
<rule ref="rulesets/java/coupling.xml">
<exclude name="CouplingBetweenObjects"/>
<exclude name="ExcessiveImports"/>
<exclude name="LooseCoupling"/>
<exclude name="LoosePackageCoupling"/>
<exclude name="LawOfDemeter"/>
</rule>
<rule ref="rulesets/java/javabeans.xml">
<exclude name="BeanMembersShouldSerialize"/>
<exclude name="MissingSerialVersionUID"/>
</rule>
<rule ref="rulesets/java/migrating_to_13.xml">
</rule>
<rule ref="rulesets/java/braces.xml">
<exclude name="IfStmtsMustUseBraces"/>
<exclude name="WhileLoopsMustUseBraces"/>
<exclude name="IfElseStmtsMustUseBraces"/>
<exclude name="ForLoopsMustUseBraces"/>
</rule>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment