SonarQube安装、配置与使用教程图解

 更新时间:2020年11月24日 11:19:27   作者:乔叶叶  
这篇文章主要介绍了SonarQube安装、配置与使用教程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

SonarQube是管理代码质量一个开放平台,可以快速的定位代码中潜在的或者明显的错误,下面将会介绍一下这个工具的安装、配置以及使用。

准备工作;

1、jdk(不再介绍)

2、sonarqube:http://www.sonarqube.org/downloads/

3、SonarQube+Scanner:https://sonarsource.bintray.com/Distribution/sonar-scanner-cli/sonar-scanner-2.5.zip

4、mysql数据库(不再介绍)

一、安装篇

1.下载好sonarqube后,解压打开bin目录,启动相应OS目录下的StartSonar。如本文演示使用的是win的64位系统,则打开D:\sonar\sonarqube-5.3\sonarqube-5.3\bin\windows-x86-64\StartSonar.bat

2.启动浏览器,访问http://localhost:9000,如出现下图则表示安装成功。

二、配置篇

1.打开mysql,新建一个数据库。

2.打开sonarqube安装目录下的D:\sonar\sonarqube-5.3\sonarqube-5.3\conf\sonar.properties文件

3.在mysql5.X节点下输入以下信息

sonar.jdbc.url=jdbc:mysql://172.16.30.228:3306/qjfsonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.jdbc.username=gmsd
sonar.jdbc.password=gmsdtrade
sonar.sorceEncoding=UTF-8
sonar.login=admin
sonar.password=admin

url是数据库连接地址,username是数据库用户名,jdbc.password是数据库密码,login是sonarqube的登录名,sonar.password是sonarqube的密码

4.重启sonarqube服务,再次访问http://localhost:9000,会稍微有点慢,因为要初始化数据库信息

5.数据库初始化成功后,登录

6.按照下图的点击顺序,进入插件安装页面

7.搜索chinese Pack,安装中文语言包

8.安装成功后,重启sonarqube服务,再次访问http://localhost:9000/,即可看到中文界面

三、使用篇

1.打开D:\sonar\sonar-scanner-2.5\conf\sonar-runner.properties文件

2.mysql节点下输入以下信息

sonar.jdbc.url=jdbc:mysql://172.16.30.228:3306/qjfsonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.jdbc.username=gmsd
sonar.jdbc.password=gmsdtrade

注意:如果测试项目与服务器不在同一台机子,则需要添加服务器的IP:

#----- Default SonarQube server

sonar.host.url=http://XXX.XXX.XXX.XXX:9000[/code]

3.配置环境变量

a.新建变量,name=SONAR_RUNNER_HOME。value=D:\sonar\sonar-scanner-2.5

b.打开path,输入%SONAR_RUNNER_HOME%\bin;

c.sonar-runner -version,出现以下信息,则表示环境变量设置成功

4.打开要进行代码分析的项目根目录,新建sonar-project.properties文件

5.输入以下信息

# must be unique in a given SonarQube instance
sonar.projectKey=my:project
# this is the name displayed in the SonarQube UI
sonar.projectName=apiautocore
sonar.projectVersion=1.0

# Path is relative to the sonar-project.properties file. Replace "\" by "/" on Windows.
# Since SonarQube 4.2, this property is optional if sonar.modules is set.
# If not set, SonarQube starts looking for source code from the directory containing
# the sonar-project.properties file.
sonar.sources=src

# Encoding of the source code. Default is default system encoding
#sonar.sourceEncoding=UTF-8

其中:projectName是项目名字,sources是源文件所在的目录

6.设置成功后,启动sonarqube服务,并启动cmd

7.在cmd进入项目所在的根目录,输入命令:sonar-runner,分析成功后会出现下图

8.打开http://localhost:9000/,我们会看到主页出现了分析项目的概要图

9.我们点击项目,选择问题链接,会看到分析代码的bug,哇,好多

10.选择一个最严重的bug,看看

原来是这个地方会出现空指针异常,原因是我没有进行初始化就使用这个变量了。Over

预知更多使用,请登录官网自行学习。

http://www.sonarqube.org/

http://docs.sonarqube.org/display/SONAR/Analyzing+with+SonarQube+Scanner

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 一篇文章让你弄懂Java运算符

    一篇文章让你弄懂Java运算符

    java中位运算符主要有按位与&、按位或|、按位非~、按位异或^, 在使用时需要将运算数都转换为二进制再进行运算,若为负数则使用补码表示,这篇文章主要给大家介绍了关于Java运算符的相关资料,需要的朋友可以参考下
    2022-03-03
  • Java使用反射获取字段属性

    Java使用反射获取字段属性

    这篇文章主要为大家详细介绍了Java如何利用反射实现获取字段属性值,文中的示例代码讲解详细,具有很好的参考价值,希望对大家有所帮助
    2023-06-06
  • SpringMVC中的ResourceUrlProviderExposingInterceptor详解

    SpringMVC中的ResourceUrlProviderExposingInterceptor详解

    这篇文章主要介绍了SpringMVC中的ResourceUrlProviderExposingInterceptor详解,ResourceUrlProviderExposingInterceptor是Spring MVC的一个HandlerInterceptor,用于向请求添加一个属性,需要的朋友可以参考下
    2023-12-12
  • Java移动文件夹及其所有子文件与子文件夹

    Java移动文件夹及其所有子文件与子文件夹

    这篇文章主要为大家详细介绍了Java移动文件夹及其所有子文件与子文件夹的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-03-03
  • springboot实现以代码的方式配置sharding-jdbc水平分表

    springboot实现以代码的方式配置sharding-jdbc水平分表

    这篇文章主要介绍了springboot实现以代码的方式配置sharding-jdbc水平分表,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-11-11
  • SpringBoot整合MyBatis-Plus3.1教程详解

    SpringBoot整合MyBatis-Plus3.1教程详解

    这篇文章主要介绍了SpringBoot整合MyBatis-Plus3.1详细教程,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • Java char[]数组转成String类型详细介绍

    Java char[]数组转成String类型详细介绍

    这篇文章详细介绍了Java char[]数组转成String类型(char to String)的方法,文章中有详细的代码示例,需要的朋友可以参考阅读
    2023-04-04
  • 亲测解决,nacos下线失败问题

    亲测解决,nacos下线失败问题

    这篇文章主要介绍了亲测解决,nacos下线失败问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-07-07
  • Spring的@Bean和@Autowired组合使用详解

    Spring的@Bean和@Autowired组合使用详解

    这篇文章主要介绍了Spring的@Bean和@Autowired组合使用详解,Spring的@Bean注解用于告诉方法,产生一个Bean对象,然后这个Bean对象交给Spring管理,产生这个Bean对象的方法Spring只会调用一次随后会将这个Bean对象放在自己的IOC容器,需要的朋友可以参考下
    2024-01-01
  • 详解Java中Iterator迭代器的用法

    详解Java中Iterator迭代器的用法

    这篇文章主要介绍了Java中Iterator迭代器的用法,比较简单易懂,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-08-08

最新评论