PMD生成的HTML报告中解决方案超链接无法跳转至官方文档求助
解决PMD 7.1.0 HTML报告解决方案链接无法跳转至官方文档的问题
核心原因
PMD 7.x 对规则集的引用方式进行了调整,若仍使用旧版本的文件路径形式(如category\apex\security.xml)加载规则集,可能会读取本地规则集文件而非内置官方规则集,导致报告中的解决方案链接指向本地相对路径而非官方文档地址。
解决步骤
修改规则集引用方式
将命令中的规则集参数从文件路径改为PMD 7.x支持的规则集ID:pmd check -d "C:\...\default\classes" -f summaryhtml -R apex-security -r "outputHTML.html"常用的Apex规则集ID包括:
apex-security:对应原安全规则集apex-performance:对应原性能规则集apex-bestpractices:对应原最佳实践规则集
自定义规则集的链接修正(若使用自定义规则集)
若你需要使用自定义规则集文件,需确保每个规则的externalInfoUrl配置为完整的官方文档地址(格式为PMD官方对应规则的标准URL),示例如下:<ruleset name="Custom Apex Security Rules" 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 https://pmd.sourceforge.io/ruleset_2_0_0.xsd"> <rule ref="pmd:apex/UnsafeHtmlEscape"> <externalInfoUrl>PMD官方文档中该规则的完整URL</externalInfoUrl> </rule> </ruleset>验证结果
重新执行修改后的命令生成报告,点击「解决方案」链接即可正常跳转至PMD官方文档页面。
内容的提问来源于stack exchange,提问作者Diego
相关产品推荐
相关产品推荐

