代码被嫌弃写的太烂?装上这个IDEA插件再试试!

代码被嫌弃写的太烂?装上这个IDEA插件再试试!

来源 | https://www.cnblogs.com/cjsblog/p/10735800.html


1.  SonarLint
SonarLint是一个代码质量检测插件,可以帮助我们检测出代码中的坏味道
代码被嫌弃写的太烂?装上这个IDEA插件再试试!
下载与安装
代码被嫌弃写的太烂?装上这个IDEA插件再试试!
在需要检测的单个文件或者单个项目上右键 –> Analyze –> Analyze with SonarLint
或者选中文件或目录,点击菜单栏 Analyze –> Analyze with SonarLint
代码被嫌弃写的太烂?装上这个IDEA插件再试试!
我们还可以禁用某些规则
代码被嫌弃写的太烂?装上这个IDEA插件再试试!
如果需要同步自定义的规则时,可以绑定到SonarQube
代码被嫌弃写的太烂?装上这个IDEA插件再试试!
代码被嫌弃写的太烂?装上这个IDEA插件再试试!
代码被嫌弃写的太烂?装上这个IDEA插件再试试!
查看检测的结果

代码被嫌弃写的太烂?装上这个IDEA插件再试试!

对于代码中的警告我们不能视而不见
代码被嫌弃写的太烂?装上这个IDEA插件再试试!
有了代码质量检测工具以后,在一定程度上可以保证代码的质量
对于每一个问题,SonarLint都给出了示例,还有相应的解决方案,教我们怎么修改,极大的方便了我们的开发
比如,对于日期类型尽量用LocalDate、LocalTime、LocalDateTime,还有重复代码、潜在的空指针异常、循环嵌套等等问题
有了代码规范与质量检测工具以后,很多东西就可以量化了,比如bug率、代码重复率等,还可以自定义各种指标,方便管理人员查看
为此,我们需要一个平台来记录每次检测分析的结果,这样就可以进行分析和统计,并且可以直观的看到这一切
于是,SonarQube 闪亮登场!

2.  SonarQube
SonarQube是一个开源的代码质量管理平台
代码被嫌弃写的太烂?装上这个IDEA插件再试试!
代码被嫌弃写的太烂?装上这个IDEA插件再试试!
代码被嫌弃写的太烂?装上这个IDEA插件再试试!
代码被嫌弃写的太烂?装上这个IDEA插件再试试!
解压&本地启动
https://docs.sonarqube.org/latest/setup/get-started-2-minutes/
unzip sonarqube-7.7.zip
cd sonarqube
-7.7
bin
/[OS]/sonar.sh consol
代码被嫌弃写的太烂?装上这个IDEA插件再试试!
启动成功后,访问 http://localhost:9000  用管理员账号(admin/admin)登录
代码被嫌弃写的太烂?装上这个IDEA插件再试试!
接下来,为了把检测的结果传到服务器,我们需要配置一个Scanner
https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner+for+Maven
这里我在项目中添加 sonar-maven-plugin 插件
<build>
<plugins>
<plugin>
<groupId>org.sonarsource.scanner.maven</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>3.6.0.1398</version>
</plugin>
</plugins>
</build>
命令行执行:mvn clean compile sonar:sonar
成功后,可以在控制台中看到这样的输出
代码被嫌弃写的太烂?装上这个IDEA插件再试试!
再次刷新 http://localhost:9000/ 会看到跟刚才不一样了
代码被嫌弃写的太烂?装上这个IDEA插件再试试!
代码被嫌弃写的太烂?装上这个IDEA插件再试试!
代码被嫌弃写的太烂?装上这个IDEA插件再试试!
以上只是本地演示,在正式环境中这些数据当然要保存到数据库中,具体安装就不演示了,下面是文档
https://docs.sonarqube.org/latest/setup/install-server/
 
3.  Alibaba代码规约插件
阿里代码规范,相信大家都不陌生
代码被嫌弃写的太烂?装上这个IDEA插件再试试!
代码被嫌弃写的太烂?装上这个IDEA插件再试试!

代码被嫌弃写的太烂?装上这个IDEA插件再试试!

4.  文档

https://www.sonarqube.org/

https://www.sonarsource.com/plans-and-pricing/community/

https://www.sonarlint.org/

https://docs.sonarqube.org/latest/setup/overview/

https://docs.sonarqube.org/latest/

https://github.com/SonarSource/sonar-scanning-examples/tree/master/sonarqube-scanner-maven

https://github.com/SonarSource


更多项目源码


最近面试BAT,整理一份面试资料Java面试BAT通关手册,覆盖了Java核心技术、JVM、Java并发、SSM、微服务、数据库、数据结构等等。
获取方式:关注公众号并回复 java 领取,更多内容陆续奉上。
明天见(。・ω・。)ノ♡

原创文章,作者:栈长,如若转载,请注明出处:https://www.cxyquan.com/11158.html

发表评论

登录后才能评论

联系我们

400-800-8888

在线咨询:点击这里给我发消息

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息