0

0

如何使用编码规范与静态代码检查插件

醉折花枝作酒筹

醉折花枝作酒筹

发布时间:2021-05-06 09:59:29

|

3512人浏览过

|

来源于CSDN

转载

本篇文章给大家介绍一下编码规范与静态代码检查插件的使用方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

如何使用编码规范与静态代码检查插件

Alibaba Java Coding Guidelines

首先介绍的是阿里巴巴的编码规约,相信大家对这个都比较熟悉了。安装方式是在

settings->plugins里面搜索
Alibaba Java Coding Guidelines-
>install->重启Idea

这个插件侧重于代码的缺陷,详细的编码规范在《阿里开发手册》已经定义,大家有兴趣的可以看看。

如果要检查整个项目所有文件的话,可以关闭窗口中的类,然后按Ctrl+Alt+Shift+J 快捷键,或者如下图操作也是可以的。

在这里插入图片描述
检查的结果如图所示:

在这里插入图片描述

如果要对单个的文件进行检查的话,可以在类上右键,选中Alibaba Coding Guidelines Analyze

CheckStyle

第二个要介绍的插件是CheckStyle插件。这个插件侧重于代码的格式检查。使用方式如下图:在checkstyle面板,点击检查按钮进行检查,也可以检查单个文件。

在这里插入图片描述在这里插入图片描述
如上图,可以看到都是一些缩进啥的编码规范,可以不用太关注。

Findbugs

findBugs-idea的作用侧重于发现代码中可能存在的bug。它检查类或者JAR 文件,将字节码与一组缺陷模式(自带检测器)进行对比以发现可能的问题。执行Findbugs编码规约扫描PMD

(Programming Mistake Detector) 是一个开源的静态代码检查工具。PMD 支持多种语言,比如项目本身的 Java,Salesforce 相关的 Apex、VisualForce,还有 JavaScript、XML 等。PMD 对于各种语言都预设了一套代码规则,也支持开发自定义规则,可以使用 Java 类或者XPath。

选中一段代码,然后右键Run PMD->Pre Defined,这里有许多检查类型可以选择,有代码样式,设计等等。

在这里插入图片描述

SonarLint

最后要介绍的是SonarLint插件,这个插件和Alibaba Java Coding Guidelines插件是实际项目中用到的比较多的两个插件。下面就详细介绍一下插件的安装和使用。

NexChatGPT
NexChatGPT

火爆全网的IDEA插件,支持IDEA全家桶

下载

安装

settings->plugins里面搜索
SonarLint
>install->重启Idea

配置SonnarLint 检查地址:

settings->Tools->SonarLint->Settings 
中增加sonarqube的地址

如下图配置了sonarqube的地址

在这里插入图片描述
使用SonarList

配置好SonarList之后,就是使用了,SonarLint既可以对所有文件进行检查,检查全部文件的方式是:点击Analyze->Analyze All Files with SonarLint

在这里插入图片描述

又可以单个文件检查,单个文件就是在文件编辑区右键选中:

在这里插入图片描述

生成的报告如下:这里既有违规的问题(即潜在的Bugs & Vulnerabilities)。比如:NullPointerException,又有代码的坏味道(Code Smells)。一般而言Bug级别的问题需要我们处理,坏味道可以忽略。还有另外一个指标就是代码的重复率,即代码内部的重复代码。

在这里插入图片描述

各类插件的比较

检查侧重点不同

工具 分析对象 侧重 应用技术
Alibaba Java Coding Guidelines 源代码 代码缺陷 Inspection机制提供实时检测功能
CheckStyle 源文件 格式缺陷 缺陷模式匹配
FindBugs 字节码 代码缺陷 缺陷模式匹配,数据流分析
PMD 源代码 代码缺陷 缺陷模式匹配
SonarList 源代码 代码缺陷 缺陷模式匹配,多个维度处理

检查项不同

工具 目的 检查项
Alibaba Java Coding Guidelines 扫描出所有潜在的代码隐患 方法名 参数名 成员变量 局部变量 枚举类 try-catch
CheckStyle 检查Java源文件是否与代码规范相符 Javadoc注释 命名规范 标题import语句 体积大小 空白
FindBugs 基于Bug Patterns 概念,查找javabytecode(.class文件)中的潜在bug NullPoint空指针检查,没有不合理关闭资源
PMD 检查Java源文件潜在问题 未使用的本地变量 空的catch块,未使用参数空 if语句,重复的import语句,未使用的私有方法 可能是Singleton的类 短/长变量及方法名字
SonarList 扫描出所有潜在的代码隐患 方法名 参数名 成员变量 局部变量 枚举类 try-catch

相关免费学习推荐:java基础教程

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
if什么意思
if什么意思

if的意思是“如果”的条件。它是一个用于引导条件语句的关键词,用于根据特定条件的真假情况来执行不同的代码块。本专题提供if什么意思的相关文章,供大家免费阅读。

839

2023.08.22

pdf怎么转换成xml格式
pdf怎么转换成xml格式

将 pdf 转换为 xml 的方法:1. 使用在线转换器;2. 使用桌面软件(如 adobe acrobat、itext);3. 使用命令行工具(如 pdftoxml)。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

1938

2024.04.01

xml怎么变成word
xml怎么变成word

步骤:1. 导入 xml 文件;2. 选择 xml 结构;3. 映射 xml 元素到 word 元素;4. 生成 word 文档。提示:确保 xml 文件结构良好,并预览 word 文档以验证转换是否成功。想了解更多xml的相关内容,可以阅读本专题下面的文章。

2116

2024.08.01

xml是什么格式的文件
xml是什么格式的文件

xml是一种纯文本格式的文件。xml指的是可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。想了解更多相关的内容,可阅读本专题下面的相关文章。

1142

2024.11.28

class在c语言中的意思
class在c语言中的意思

在C语言中,"class" 是一个关键字,用于定义一个类。想了解更多class的相关内容,可以阅读本专题下面的文章。

747

2024.01.03

python中class的含义
python中class的含义

本专题整合了python中class的相关内容,阅读专题下面的文章了解更多详细内容。

24

2025.12.06

空指针异常处理
空指针异常处理

本专题整合了空指针异常解决方法,阅读专题下面的文章了解更多详细内容。

23

2025.11.16

idea快捷键大全
idea快捷键大全

本专题为大家提供idea快捷键相关的文章,帮助大家解决问题。

173

2023.08.03

Golang 测试体系与代码质量保障:工程级可靠性建设
Golang 测试体系与代码质量保障:工程级可靠性建设

Go语言测试体系与代码质量保障聚焦于构建工程级可靠性系统。本专题深入解析Go的测试工具链(如go test)、单元测试、集成测试及端到端测试实践,结合代码覆盖率分析、静态代码扫描(如go vet)和动态分析工具,建立全链路质量监控机制。通过自动化测试框架、持续集成(CI)流水线配置及代码审查规范,实现测试用例管理、缺陷追踪与质量门禁控制,确保代码健壮性与可维护性,为高可靠性工程系统提供质量保障。

48

2026.02.28

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Kotlin 教程
Kotlin 教程

共23课时 | 4.1万人学习

C# 教程
C# 教程

共94课时 | 10.5万人学习

Java 教程
Java 教程

共578课时 | 75.6万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号