PMD 处理错误:PMDException:处理时出错

问题描述 投票:0回答:1
  • 我想要实现的目标:

使用 org.apache.maven.plugins maven-pmd-plugin 3.21.2 对项目执行 PMD 扫描

  • 我尝试了什么:

有了这个 pom:

 <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-pmd-plugin</artifactId>
                <version>3.21.2</version>
                <configuration>
                    <outputDirectory>target/reports/pmd</outputDirectory>
                </configuration>
            </plugin>

我正在运行这个 mvn 命令

mvn clean install pmd:cpd pmd:pmd

  • 问题

可100%重现,我得到这个:

 There are X PMD processing errors:
C:\Users\SomeFile.java: PMDException: Error while processing 

除此之外没有其他日志,排查困难

  • 问题

什么可能导致这个

PMDException
? 如何获取更多日志来解决此问题?

maven pmd
1个回答
0
投票

处理错误是 maven-pmd-plugin 创建的报告的一部分。如果您查看

target/reports/pmd/pmd.html
处的报告,您应该会看到处理错误,包括堆栈跟踪以供进一步分析。相同的信息也添加到
target/pmd.xml
中基于 XML 的报告中。

maven-pmd-plugin 包含几个配置选项,这方面很有趣:

  • renderProcessingErrors - 默认情况下启用此功能,这就是处理错误最终出现在 HTML 报告中的原因。
  • skipPmdError - 默认情况下启用。但您可能想要禁用此功能,以便在 PMD 由于某种原因无法分析代码时构建会中断。但是,禁用此选项后,maven-pmd-plugin 不再创建包含处理错误堆栈跟踪的报告。为了查看错误,您需要使用
    -X
    标志运行 Maven,以查看调试输出。
© www.soinside.com 2019 - 2024. All rights reserved.