分析 JSP 代码

PMD 插件默认分析 Java。您可以将其配置为分析 Java Server Pages 文件,如下所示。

该示例假定 JSP 源代码存储在源目录src/main/webapp下的各个子目录中,并启用“最佳实践”、“代码风格”、“设计”、“容易出错”和“安全”类别中的所有规则.

请注意,您必须确保配置compileSourceRootsincludes,以便 PMD 找到 JSP 文件。

有关可用规则的​​完整列表,请参阅JSP 规则索引

<project>
  ...
  <reporting>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-pmd-plugin</artifactId>
        <version>3.16.0</version>
        <configuration>
          <language>jsp</language>
          <rulesets>
            <ruleset>/category/jsp/bestpractices.xml</ruleset>
            <ruleset>/category/jsp/codestyle.xml</ruleset>
            <ruleset>/category/jsp/design.xml</ruleset>
            <ruleset>/category/jsp/errorprone.xml</ruleset>
            <ruleset>/category/jsp/security.xml</ruleset>
          </rulesets>
          <includes>
            <include>**/*.jsp</include>
          </includes>
          <compileSourceRoots>
            <compileSourceRoot>${basedir}/src/main/webapp</compileSourceRoot>
          </compileSourceRoots>
        </configuration>
        <reportSets>
          <reportSet>
            <reports>
              <report>pmd</report>
            </reports>
          </reportSet>
        </reportSets>
      </plugin>
    </plugins>
  </reporting>
  ...
</project>

注意:配置compileSourceRoots仅适用于 Maven 3.3.9 及更高版本。对于旧版本,您需要使用带有add-source目标的build-helper-maven-plugin来添加额外的源目录,以便 PMD 找到 JSP 文件。