Jenkins代码规范集成(Findbugs,PMD,checkstyle,)
Findbugs检索性能缺陷及逻辑问题,Findbugs只能找出JAVA的逻辑问题,常见的问题类似空指针,忽略返回值等PMD检测类似开启未关闭,未用的变量等问题,一般不涉及逻辑,注重每个变量checkstyle检测代码格式,这里一般检查的就不是BUG,注重代码易读性,这个的有些规范过于死板,所以一般情况下可以选择自己配置检查内容,或者仅作为参考检查,甚至可以不使用eslin...
·
Findbugs
检索性能缺陷及逻辑问题,Findbugs只能找出JAVA的逻辑问题,常见的问题类似空指针,忽略返回值等
PMD
检测类似开启未关闭,未用的变量等问题,一般不涉及逻辑,注重每个变量
checkstyle
检测代码格式,这里一般检查的就不是BUG,注重代码易读性,这个的有些规范过于死板,所以一般情况下可以选择自己配置检查内容,或者仅作为参考检查,甚至可以不使用
eslint
前端React的代码格式检查,前端目前没有找到什么比较好的检测工具,这个只能检查代码格式,很难查出代码BUG
本地生成检测结果测试
简单说Jenkins集成其实就是将你生成好的检查结果文件展示到网页而已,所以需要自行执行命令进行代码质量检查。
- 建立一个基于maven的springboot项目
- 修改POM文件,将build标签改造成如下(注意如果只使用Findbugs和PMD不需要这么复杂,只引用spring-boot-maven-plugin这个插件就够了,我引入)
<build> <finalName>aaaa</finalName> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-pmd-plugin</artifactId> <version>3.12.0</version> <!-- 这个configuration标签可以不要,这个是自定义PMD规则 --> <configuration> <rulesets> <ruleset>/pmd-rule.xml</ruleset> </rulesets> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId> <version>3.1.0</version> <executions> <execution> <!-- 绑定pmd:pmd到validate生命周期,在validate时会自动进行代码规范检查 --> <id>validate</id> <phase>validate</phase> <configuration> <!-- 这个configLocation标签可以不要,这个是自定义checkstyle规则 --> <configLocation>/checkstyle.xml</configLocation> <encoding>UTF-8</encoding> <consoleOutput>true</consoleOutput> <failsOnError>true</failsOnError> <includeTestSourceDirectory>false</includeTestSourceDirectory> </configuration> <goals> <goal>check</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
- 在项目根目录执行mvn findbugs:findbugs ,生成findbugs结果文件findbugsXml.xml
- 在项目根目录执行mvn pmd:pmd ,生成PMD结果文件pmd.xml
- 在项目根目录执行mvn checkstyle:checkstyle ,生成checkstyle结果文件checkstyle-result.xml
- 生成一个基础的React项目,项目根目录执行命令eslint --ext .js src -c .eslintrc.js -f checkstyle > eslint.xml生成结果文件eslint.xml
- 以上4个文件就是之后Jenkins需要的4个文件,都正常生成后就可以进行Jenkins集成了
Jenkins集成(JAVA)
- 部署一个基础的Jenkins自动部署项目,配置好maven和jdk信息,基础配置这里不写了
- 在项目的配置中找到Build这项,添加如下信息
- 找到Post-build Actions项,添加分析功能,这里空白是因为我直接生成的默认文件名,如果生成的不是默认文件名,在这些空白处填上你的名称就行
Jenkins集成(React)
- 部署一个基础的Jenkins自动部署项目,配置好maven和jdk信息,基础配置这里不写了
- 在执行yarn build后,执行eslint --ext .js src -c .eslintrc.js -f checkstyle > eslint.xml
- 添加分析配置,这里名字不是默认名字,所以写了下名字
IDEA中附加代码检查
这里推荐直接使用QAPlug插件,里面包含了Findbugs,PMD和CheckStyle,可以再附加个Alibaba Java Coding Guidelines插件实时检查代码格式
更多推荐
已为社区贡献1条内容
所有评论(0)