resolve PMD warning in logs:
https://ci.appveyor.com/project/Checkstyle/checkstyle/builds/53003228/job/rcb6sqkpyovuw7pb#L1782
[INFO] >>> pmd:3.28.0:check (default) > :pmd @ checkstyle >>>
[INFO]
[INFO] --- pmd:3.28.0:pmd (pmd) @ checkstyle ---
[INFO] PMD version: 7.18.0
[WARNING] Warning at C:\projects\checkstyle\target\pmd\rulesets\001-pmd-main.xml:53:3
51| </properties>
52| </rule>
53| <rule ref="category/java/design.xml/AvoidCatchingGenericException">
^^^^^ Use Rule name category/java/errorprone.xml/AvoidCatchingGenericException instead of the deprecated Rule name category/java/design.xml/AvoidCatchingGenericException. PMD 8.0.0 will remove support for this deprecated Rule name usage.
54| <properties>
55| <!-- we allow catching Exception in certain cases to provide more details in wrapper -->
[WARNING] Warning at C:\projects\checkstyle\target\pmd\rulesets\001-pmd-main.xml:53:3
51| </properties>
52| </rule>
53| <rule ref="category/java/design.xml/AvoidCatchingGenericException">
^^^^^ Use Rule name category/java/errorprone.xml/AvoidCatchingGenericException instead of the deprecated Rule name category/java/design.xml/AvoidCatchingGenericException. PMD 8.0.0 will remove support for this deprecated Rule name usage.
54| <properties>
55| <!-- we allow catching Exception in certain cases to provide more details in wrapper -->
[WARNING] Exception applying rule UselessOverridingMethod on file C:\projects\checkstyle\src\main\java\com\puppycrawl\tools\checkstyle\checks\annotation\MissingDeprecatedCheck.java, continuing with next rule
net.sourceforge.pmd.lang.rule.xpath.PmdXPathException: net.sf.saxon.trans.XPathException: XPath rule expression returned a non-node (class net.sf.saxon.value.StringValue):
Exception Context:
[1:Kind=Unknown error]
[2:Phase=EVALUATION]
[3:Expression=//ClassDeclaration[@SimpleName='MissingDeprecatedCheck'] //MethodDeclaration[@Name='setViolateExecutionOnNonTightHtml'] || //ClassDeclaration[@SimpleName='LineLengthCheck'] //MethodDeclaration[@Name='setFileExtensions'] || //ClassDeclaration[@SimpleName='NonEmptyAtclauseDescriptionCheck'] //MethodDeclaration[@Name='setJavadocTokens'] || //ClassDeclaration[@SimpleName='ConstantNameCheck'] //MethodDeclaration[@Name='setApplyToPackage' or @Name='setApplyToPrivate' or @Name='setApplyToProtected' or @Name='setApplyToPublic'] || //ClassDeclaration[@SimpleName='StaticVariableNameCheck'] //MethodDeclaration[@Name='setApplyToPackage' or @Name='setApplyToPrivate' or @Name='setApplyToProtected' or @Name='setApplyToPublic'] || //ClassDeclaration[@SimpleName='TypeNameCheck'] //MethodDeclaration[@Name='setApplyToPackage' or @Name='setApplyToPrivate' or @Name='setApplyToProtected' or @Name='setApplyToPublic'] || //ClassDeclaration[@SimpleName='MemberNameCheck'] //MethodDeclaration[@Name='setApplyToPackage' or @Name='setApplyToPrivate' or @Name='setApplyToProtected' or @Name='setApplyToPublic'] || //ClassDeclaration[@SimpleName='MethodNameCheck'] //MethodDeclaration[@Name='setApplyToPackage' or @Name='setApplyToPrivate' or @Name='setApplyToProtected' or @Name='setApplyToPublic'] || //ClassDeclaration[@SimpleName='ClassDataAbstractionCouplingCheck'] //MethodDeclaration[@Name='setExcludeClassesRegexps' or @Name='setExcludedClasses' or @Name='setExcludedPackages'] || //ClassDeclaration[@SimpleName='ClassFanOutComplexityCheck'] //MethodDeclaration[@Name='setExcludeClassesRegexps' or @Name='setExcludedClasses' or @Name='setExcludedPackages']]
[4:Version=3.1]
[5:Location in expr=null]
[6:Rule applied on node=!debug only! [MethodDeclaration:129:17]/**
* Setter to control when to print violations if the Javadoc being examined by this check
* violates the tight html rules defi(truncated)]
---------------------------------
at net.sourceforge.pmd.lang.rule.xpath.internal.SaxonXPathRuleQuery.wrapException (SaxonXPathRuleQuery.java:151)
at net.sourceforge.pmd.lang.rule.xpath.internal.SaxonXPathRuleQuery.evaluate (SaxonXPathRuleQuery.java:142)
at net.sourceforge.pmd.reporting.ViolationSuppressor$2.suppressOrNull (ViolationSuppressor.java:88)
at net.sourceforge.pmd.reporting.ViolationSuppressor.suppressOrNull (ViolationSuppressor.java:198)
at net.sourceforge.pmd.reporting.RuleContext.suppressOrNull (RuleContext.java:248)
at net.sourceforge.pmd.reporting.RuleContext.addViolationWithPosition (RuleContext.java:194)
at net.sourceforge.pmd.reporting.RuleContext.addViolationWithPosition (RuleContext.java:146)
at net.sourceforge.pmd.reporting.RuleContext.addViolationWithMessage (RuleContext.java:124)
at net.sourceforge.pmd.reporting.RuleContext.addViolation (RuleContext.java:83)
at net.sourceforge.pmd.lang.java.rule.design.UselessOverridingMethodRule.visit (UselessOverridingMethodRule.java:93)
at net.sourceforge.pmd.lang.java.ast.ASTMethodDeclaration.acceptVisitor (ASTMethodDeclaration.java:56)
at net.sourceforge.pmd.lang.java.ast.AbstractJavaNode.acceptVisitor (AbstractJavaNode.java:38)
at net.sourceforge.pmd.lang.java.rule.AbstractJavaRule.apply (AbstractJavaRule.java:30)
at net.sourceforge.pmd.lang.rule.RuleReference.apply (RuleReference.java:413)
at net.sourceforge.pmd.lang.rule.RuleReference.apply (RuleReference.java:413)
at net.sourceforge.pmd.lang.rule.internal.RuleApplicator.applyOnIndex (RuleApplicator.java:77)
at net.sourceforge.pmd.lang.rule.internal.RuleApplicator.apply (RuleApplicator.java:57)
at net.sourceforge.pmd.lang.rule.internal.RuleSets.apply (RuleSets.java:183)
at net.sourceforge.pmd.lang.impl.PmdRunnable.processSource (PmdRunnable.java:140)
at net.sourceforge.pmd.lang.impl.PmdRunnable.run (PmdRunnable.java:80)
at java.util.concurrent.Executors$RunnableAdapter.call (Executors.java:572)
at java.util.concurrent.FutureTask.run (FutureTask.java:317)
at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1144)
at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:642)
at java.lang.Thread.run (Thread.java:1583)
Caused by: net.sf.saxon.trans.XPathException: XPath rule expression returned a non-node (class net.sf.saxon.value.StringValue):
at net.sourceforge.pmd.lang.rule.xpath.internal.SaxonXPathRuleQuery.evaluate (SaxonXPathRuleQuery.java:132)
at net.sourceforge.pmd.reporting.ViolationSuppressor$2.suppressOrNull (ViolationSuppressor.java:88)
at net.sourceforge.pmd.reporting.ViolationSuppressor.suppressOrNull (ViolationSuppressor.java:198)
at net.sourceforge.pmd.reporting.RuleContext.suppressOrNull (RuleContext.java:248)
at net.sourceforge.pmd.reporting.RuleContext.addViolationWithPosition (RuleContext.java:194)
at net.sourceforge.pmd.reporting.RuleContext.addViolationWithPosition (RuleContext.java:146)
at net.sourceforge.pmd.reporting.RuleContext.addViolationWithMessage (RuleContext.java:124)
at net.sourceforge.pmd.reporting.RuleContext.addViolation (RuleContext.java:83)
at net.sourceforge.pmd.lang.java.rule.design.UselessOverridingMethodRule.visit (UselessOverridingMethodRule.java:93)
at net.sourceforge.pmd.lang.java.ast.ASTMethodDeclaration.acceptVisitor (ASTMethodDeclaration.java:56)
at net.sourceforge.pmd.lang.java.ast.AbstractJavaNode.acceptVisitor (AbstractJavaNode.java:38)
at net.sourceforge.pmd.lang.java.rule.AbstractJavaRule.apply (AbstractJavaRule.java:30)
at net.sourceforge.pmd.lang.rule.RuleReference.apply (RuleReference.java:413)
at net.sourceforge.pmd.lang.rule.RuleReference.apply (RuleReference.java:413)
at net.sourceforge.pmd.lang.rule.internal.RuleApplicator.applyOnIndex (RuleApplicator.java:77)
at net.sourceforge.pmd.lang.rule.internal.RuleApplicator.apply (RuleApplicator.java:57)
at net.sourceforge.pmd.lang.rule.internal.RuleSets.apply (RuleSets.java:183)
at net.sourceforge.pmd.lang.impl.PmdRunnable.processSource (PmdRunnable.java:140)
at net.sourceforge.pmd.lang.impl.PmdRunnable.run (PmdRunnable.java:80)
at java.util.concurrent.Executors$RunnableAdapter.call (Executors.java:572)
at java.util.concurrent.FutureTask.run (FutureTask.java:317)
at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1144)
at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:642)
at java.lang.Thread.run (Thread.java:1583)
[WARNING] Exception occurred on node !debug only! [MethodDeclaration:129:17]/**
* Setter to control when to print violations if the Javadoc being examined by this check
* violates the tight html rules defi(truncated)
....
there are few exception stacktraces like this, all should be resolved.
resolve PMD warning in logs:
https://ci.appveyor.com/project/Checkstyle/checkstyle/builds/53003228/job/rcb6sqkpyovuw7pb#L1782
there are few exception stacktraces like this, all should be resolved.