SonarQube安装与SonarLint插件_sonarcube-程序员宅基地

技术标签: 质量管理  笔记  android studio  开源项目学习  

SonarQube

代码质量分析工具简介

代码质量包括可读性、可维护性、简洁性、健壮性、注释及命名规范等多方面的内容,通过对代码进行质量分析可以进行更好的对项目代码进行规范、减少潜在问题的发生概率,同时也有利于提高代码的可读性和可维护性。
可以利用SonarQube,FindBugs等自动化工具进行代码质量分析,这些工具可以在规定的规范下完成程序的语法、接口等多方面的审查。
以本次使用的SonarQube为例,它是一个开源的代码质量管理平台,涵盖了架构设计、注释、编码规范、潜在缺陷、代码复杂度、重复代码等多个维度的质量分析。SonarQube软件是一种静态代码检查工具,采用B/S架构,帮助检查代码缺陷,改善代码质量,提高开发速度,通过插件形式,可以支持Java、C、C++、JavaScript等等多种编程语言的代码质量管理与检测。

SonarQube安装

本文安装SonarCube7.6,配置JDK1.8.0-216以及MySql环境,采用mysql-community-5.7.25.0。
JDK官网下载
SonarCube官网
MySQL官网

JDK配置

下载JDK1.8.0.X安装文件并按照提示完成安装,然后配置环境变量。
在“环境变量”窗口中“新建”一个用户变量:JAVA_HOME,其值设置为JDK的安装目录。
JAVA_HOME设置PATH路径:%JAVA_HOME%\bin;
path设置CLASS_PATH :%JAVA_HOME%\lib;
检测配置是否成功可以打开命令行输入:Java -version
配置成功

MySQL配置

基本上直接按照installer提示安装没有问题就可以,一定要记住安装时的密码,安装可以参考:
MySQL安装

MySQL安装时需要注意是否安装过或者正在使用MarieDB等数据库,这里遇到过问题:

安装后配置如下:

  1. 打开cmd命令行输入:mysql -uroot -p 回车后输入安装密码登录MySQL。
    登录MySql
  2. 创建数据库sonar:
CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
  1. 创建用户sonar,密码设置为sonar:
CREATE USER 'sonar' IDENTIFIED BY 'sonar';
  1. 把已经创建的数据库sonar权限赋给该用户:
 GRANT ALL ON sonar.* TO 'sonar'@'%' IDENTIFIED BY 'sonar';
GRANT ALL ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'sonar';
FLUSH PRIVILEGES;
  1. 查看当前数据库:
 show databases;

当前数据库

SonarCube配置

  1. 解压安装包后编辑sonar.properties文件:
    配置文件
    加入如下内容:
    配置具体内容:
    sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false sonar.jdbc.username=root sonar.jdbc.password=root sonar.sorceEncoding=UTF-8 sonar.login=admin sonar.password=admin
    配置解析:
    第一行: 链接myslq数据库地址,数据库名。sonar问号后面是格式内容;
    第二/三行: mysql的账号/密码;
    第四行: 支持的编码格式;
    第五/六行: sonar登录时的账号密码,默认就是admin。

  2. 启动SonarCube
    以上配置好之后,找到bin\window-x86-64 下的StartSonar.bat启动:
    启动批处理启动成功命令窗口如图:
    成功在浏览器输入:http://localhost:9000即可访问,如未修改默认账号密码<admin,admin>登录:
    访问成功页面

AndroidStudio与SonarLint插件

由于本文进行的是Gradle项目的质量分析,采用的IDE是Android Stuidio,因此直接安装SonarLint插件使用。

  1. 打开Setting->Plugins搜索:sonarlint并安装。
    setting
    搜索(maket中搜索,由于已安装故在installed中)
  2. 配置本地SonarCube:打开setting->tools->sonarlint->project settings
    进行配置:
    Step1跳转到配置界面,点击+号添加绑定:
    具体配置利用Token或者账号密码进行登录:
    在这里插入图片描述3. 打开SonarLint视图就可以进行质量检查啦~
    示例结果

参考博客

代码静态扫描工具sonar
SonarQube代码质量管理平台安装与使用

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_43993386/article/details/110941778

智能推荐

oracle 12c 集群安装后的检查_12c查看crs状态-程序员宅基地

文章浏览阅读1.6k次。安装配置gi、安装数据库软件、dbca建库见下:http://blog.csdn.net/kadwf123/article/details/784299611、检查集群节点及状态:[root@rac2 ~]# olsnodes -srac1 Activerac2 Activerac3 Activerac4 Active[root@rac2 ~]_12c查看crs状态

解决jupyter notebook无法找到虚拟环境的问题_jupyter没有pytorch环境-程序员宅基地

文章浏览阅读1.3w次,点赞45次,收藏99次。我个人用的是anaconda3的一个python集成环境,自带jupyter notebook,但在我打开jupyter notebook界面后,却找不到对应的虚拟环境,原来是jupyter notebook只是通用于下载anaconda时自带的环境,其他环境要想使用必须手动下载一些库:1.首先进入到自己创建的虚拟环境(pytorch是虚拟环境的名字)activate pytorch2.在该环境下下载这个库conda install ipykernelconda install nb__jupyter没有pytorch环境

国内安装scoop的保姆教程_scoop-cn-程序员宅基地

文章浏览阅读5.2k次,点赞19次,收藏28次。选择scoop纯属意外,也是无奈,因为电脑用户被锁了管理员权限,所有exe安装程序都无法安装,只可以用绿色软件,最后被我发现scoop,省去了到处下载XXX绿色版的烦恼,当然scoop里需要管理员权限的软件也跟我无缘了(譬如everything)。推荐添加dorado这个bucket镜像,里面很多中文软件,但是部分国外的软件下载地址在github,可能无法下载。以上两个是官方bucket的国内镜像,所有软件建议优先从这里下载。上面可以看到很多bucket以及软件数。如果官网登陆不了可以试一下以下方式。_scoop-cn

Element ui colorpicker在Vue中的使用_vue el-color-picker-程序员宅基地

文章浏览阅读4.5k次,点赞2次,收藏3次。首先要有一个color-picker组件 <el-color-picker v-model="headcolor"></el-color-picker>在data里面data() { return {headcolor: ’ #278add ’ //这里可以选择一个默认的颜色} }然后在你想要改变颜色的地方用v-bind绑定就好了,例如:这里的:sty..._vue el-color-picker

迅为iTOP-4412精英版之烧写内核移植后的镜像_exynos 4412 刷机-程序员宅基地

文章浏览阅读640次。基于芯片日益增长的问题,所以内核开发者们引入了新的方法,就是在内核中只保留函数,而数据则不包含,由用户(应用程序员)自己把数据按照规定的格式编写,并放在约定的地方,为了不占用过多的内存,还要求数据以根精简的方式编写。boot启动时,传参给内核,告诉内核设备树文件和kernel的位置,内核启动时根据地址去找到设备树文件,再利用专用的编译器去反编译dtb文件,将dtb还原成数据结构,以供驱动的函数去调用。firmware是三星的一个固件的设备信息,因为找不到固件,所以内核启动不成功。_exynos 4412 刷机

Linux系统配置jdk_linux配置jdk-程序员宅基地

文章浏览阅读2w次,点赞24次,收藏42次。Linux系统配置jdkLinux学习教程,Linux入门教程(超详细)_linux配置jdk

随便推点

matlab(4):特殊符号的输入_matlab微米怎么输入-程序员宅基地

文章浏览阅读3.3k次,点赞5次,收藏19次。xlabel('\delta');ylabel('AUC');具体符号的对照表参照下图:_matlab微米怎么输入

C语言程序设计-文件(打开与关闭、顺序、二进制读写)-程序员宅基地

文章浏览阅读119次。顺序读写指的是按照文件中数据的顺序进行读取或写入。对于文本文件,可以使用fgets、fputs、fscanf、fprintf等函数进行顺序读写。在C语言中,对文件的操作通常涉及文件的打开、读写以及关闭。文件的打开使用fopen函数,而关闭则使用fclose函数。在C语言中,可以使用fread和fwrite函数进行二进制读写。‍ Biaoge 于2024-03-09 23:51发布 阅读量:7 ️文章类型:【 C语言程序设计 】在C语言中,用于打开文件的函数是____,用于关闭文件的函数是____。

Touchdesigner自学笔记之三_touchdesigner怎么让一个模型跟着鼠标移动-程序员宅基地

文章浏览阅读3.4k次,点赞2次,收藏13次。跟随鼠标移动的粒子以grid(SOP)为partical(SOP)的资源模板,调整后连接【Geo组合+point spirit(MAT)】,在连接【feedback组合】适当调整。影响粒子动态的节点【metaball(SOP)+force(SOP)】添加mouse in(CHOP)鼠标位置到metaball的坐标,实现鼠标影响。..._touchdesigner怎么让一个模型跟着鼠标移动

【附源码】基于java的校园停车场管理系统的设计与实现61m0e9计算机毕设SSM_基于java技术的停车场管理系统实现与设计-程序员宅基地

文章浏览阅读178次。项目运行环境配置:Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。项目技术:Springboot + mybatis + Maven +mysql5.7或8.0+html+css+js等等组成,B/S模式 + Maven管理等等。环境需要1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。_基于java技术的停车场管理系统实现与设计

Android系统播放器MediaPlayer源码分析_android多媒体播放源码分析 时序图-程序员宅基地

文章浏览阅读3.5k次。前言对于MediaPlayer播放器的源码分析内容相对来说比较多,会从Java-&amp;amp;gt;Jni-&amp;amp;gt;C/C++慢慢分析,后面会慢慢更新。另外,博客只作为自己学习记录的一种方式,对于其他的不过多的评论。MediaPlayerDemopublic class MainActivity extends AppCompatActivity implements SurfaceHolder.Cal..._android多媒体播放源码分析 时序图

java 数据结构与算法 ——快速排序法-程序员宅基地

文章浏览阅读2.4k次,点赞41次,收藏13次。java 数据结构与算法 ——快速排序法_快速排序法