--- title: Maven 插件之代码检查 date: 2019-12-16 17:09:26 order: 06 categories: - Java - 软件 - 构建 - Maven tags: - Java - 构建 - Maven permalink: /pages/3f571b78/ --- # Maven 插件之代码检查 ## maven-checkstyle-plugin > **maven-checkstyle-plugin,用于检测代码中不符合规范的地方。** ### 定义 checkstyle.xml ```xml ``` 配置 `pom.xml`: ```xml ... config/maven_checks.xml ... org.apache.maven.plugins maven-checkstyle-plugin 3.0 validate validate style/checkstyle.xml UTF-8 true true false check org.apache.maven.plugins maven-jxr-plugin 2.3 ... ``` 其中可以修改使用的检查规则文件路径,插件默认提供了四个规则文件可以直接使用,无需手动下载: - config/sun_checks.xml - Sun Microsystems Definition (default). - config/maven_checks.xml - Maven Development Definitions. - config/turbine_checks.xml - Turbine Development Definitions. - config/avalon_checks.xml - Avalon Development Definitions. 配置好后,可以执行 `mvn clean checkstyle:check` 检查代码。 ## maven-pmd-plugin > maven-pmd-plugin 是阿里编程规范检查插件。 配置 `pom.xml`: 参考 https://github.com/alibaba/p3c/blob/master/p3c-pmd/pom.xml 配置 ```xml org.apache.maven.plugins maven-pmd-plugin 3.11.0 ${project.build.sourceEncoding} ${maven.compiler.target} true rulesets/java/ali-comment.xml rulesets/java/ali-concurrent.xml rulesets/java/ali-constant.xml rulesets/java/ali-exception.xml rulesets/java/ali-flowcontrol.xml rulesets/java/ali-naming.xml rulesets/java/ali-oop.xml rulesets/java/ali-orm.xml rulesets/java/ali-other.xml rulesets/java/ali-set.xml true verify check com.alibaba.p3c p3c-pmd 2.0.0 ``` 配置好后,可以执行 `mvn clean pmd:check` 检查代码。 ## 参考资料 - https://maven.apache.org/plugins/maven-checkstyle-plugin/ - https://maven.apache.org/jxr/maven-jxr-plugin/ - https://www.jianshu.com/p/557b975ae40d - 阿里巴巴编程规范 - https://github.com/alibaba/p3c - https://github.com/alibaba/p3c/blob/master/p3c-pmd/pom.xml