当前位置: 首页 > news >正文

提升代码质量,使用插件对 java 代码进行扫描检查分析

目录

  • 前言
  • 一、使用maven-checkstyle-plugin插件
    • 1. maven-checkstyle-plugin 介绍
    • 2.引入依赖
    • 3.使用
  • 二、使用 idea 插件
    • 1.安装
    • 2.使用

前言

很多时候我们的代码写的不规范,比如没缩进、参数间没空格、导入的包没用到没删除、方法很长没有进行拆分、 直接对方法参数进行了赋值分配等等不规范的操作或写法。

为了规范代码并提高代码的质量,以及扫描代码检测潜在的不合理代码,我们可以使用一些插件来进行代码扫描分析。

一、使用maven-checkstyle-plugin插件

1. maven-checkstyle-plugin 介绍

maven-checkstyle-plugin 是 maven 提供的一个插件,用于扫描代码检测不合理需要改进的差代码,简单来说就是代码规范检查。

举个例子:

GitHub 就用它在提交和拉取请求时审核代码库的一致性(例如缩进规则等)。GitHub 的 Actions 等 CI/CD 系统中就使用了这个东西,当你在 GitHub 上 fork 了一个开源项目,然后修改一些代码后给原项目作者提了一个 PR 请求,原作者同意后GitHub CI就会用这个东西构建检查代码缩进和代码规范是否有不合理的地方。

2.引入依赖

在 pom.xml 的 pluginManagement 标签中引入如下插件依赖:

		<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-checkstyle-plugin</artifactId><version>3.2.1</version></plugin>

maven-checkstyle-plugin 自带两套扫描代码的规则,一套是 Sun 定义的 sun_checks.xml ,一套是由谷歌定义的 google_checks.xml。像上面那样不指定扫描规则,则默认采用 sun_checks.xml ,如果你想指定使用 google_checks.xml 规则扫描代码可以像下面这样引入插件依赖:

		<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-checkstyle-plugin</artifactId><version>3.2.1</version><configuration><configLocation>google_checks.xml</configLocation></configuration></plugin>

如果你想采用自定义的扫描规则,请在你的 pom.xml 同级目录下新建 checkstyle.xml 文件并在其中配置你的规则。然后修改 pom.xml 中 maven-checkstyle-plugin 插件的 configLocation 配置 checkstyle.xml ,就像上面的 google_checks.xml 一样。

网上有很多自定义的 checkstyle.xml 规则,例如:

  • 谷歌的代码检测规则
  • 较完整checkstyle.xml及说明

3.使用

在项目目录下打开 cmd 命令行或者在 idea 中的 Terminal 中输入mvn checkstyle:check 命令开始扫描代码。
扫描后提示的ERROR就是需要改进的地方:

请添加图片描述

其他关于 maven-checkstyle-plugin 插件的配置和说明具体可参见官网: Apache Maven Checkstyle Plugin

二、使用 idea 插件

除了使用上面的 maven 插件,如果你使用的是 idea 编译器,你可以安装 idea 的插件来扫描代码,效果和 maven 插件一样。

1.安装

File ==》Settings ==》Plugins ==》Marketplace ==》搜索 CheckStyle-IDEA 进行安装 。

请添加图片描述

( 插件有 100MB 左右可能需要下载一会,如果下载很慢的话可以浏览器访问 idea插件中心下载CheckStyle-IDEA 找到你对应的idea版本下载相应的 CheckStyle-IDEA 插件压缩包,然后 idea 里 File ==》Settings ==》Plugins ==》Marketplace ==》点击右上角设置图标选择 Install Plugin from Disk , 选择下载的压缩包进行安装,最后重启 idea )

2.使用

CheckStyle-IDEA 自带 Sun 和 Google 两套扫描代码规则,你可以选择其中一个规则进行扫描。(如果要自定义扫描规则或其他配置,File ==》Settings ==》Tools ==》Checkstyle 进行设置)

左侧的三个按钮分别是检查当前文件的代码、检查当前模块的代码、检查整个项目的代码

在这里插入图片描述

扫描结果如下,点击具体的报错可跳转定位到相关代码处:

在这里插入图片描述

http://www.lryc.cn/news/44253.html

相关文章:

  • 如何用秒验提升用户体验和转换率?
  • 【新】(2023Q2模拟题JAVA)华为OD机试 - 机器人活动区域
  • 2023软件测试面试真题宝典大汇总,没收藏的都后悔了
  • 十、MyBatis的逆向工程
  • 网站是怎么屏蔽脏话的呢:简单学会SpringBoot项目敏感词、违规词过滤方案
  • kafka经典面试题
  • 我的CSDN笔记总索引(阅读量降序,代码自动遍历生成HTML5源码)
  • 修改Windows hosts文件的解决方案
  • 愤怒的Spring(三)Idaea Maven搭建Spring并运行项目(超详细,超全)
  • NDK(三):JNIEnv解析
  • 禅道——图文安装及使用教程
  • Java基础——枚举类enum
  • 【机器学习】一文了解如何评估和选择最佳机器学习模型并绘制ROC曲线?
  • vue3 笔记
  • 第12章_MySQL数据类型精讲
  • 二叉树路径总和第一题
  • @RefreshScope源码解析
  • 【开发】后端框架——Spring
  • vue中的自定义指令
  • 技术分享及探讨
  • 人工智能AI
  • 2022天梯赛补题
  • 字节跳动测试岗面试挂在2面,复盘后,我总结了失败原因,决定再战一次...
  • Nodejs实现通用的加密和哈希算法(MD5、SHA1、Hmac、AES、Diffie-Hellman、RSA),crypto模块详解
  • 测试行业3年经验,从大厂裸辞后,面试阿里、字节全都一面挂,被面试官说我的水平还不如应届生
  • 安卓悬浮窗口,  丝滑双指缩放视频窗口
  • 300左右哪款蓝牙耳机适合学生用?四款便宜质量好的蓝牙耳机推荐
  • 桥梁设计模式
  • 【华为OD机试 2023最新 】 新员工座位(C++)
  • 蓝桥杯刷题第二十二天