Mac上sonar插件的安装及使用

时间:2022-07-25
本文章向大家介绍Mac上sonar插件的安装及使用,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

本文主要讲解sonar的安装及使用。 分为两个维度来讲解

1. 使用sonarqube以及自带的Derby数据库

2. 使用sonarqube以及配置mysql数据库

一、使用sonarqube以及自带的Derby数据库

  sonarqube是一款代码质量检测工具,促使你养成一个好的代码规范。下面是我测试的我们正在使用的一个项目。这里使用的是sonar自带的Derby数据库。没有更改任何的配置文件。

第一步,下载sonqube和sonar-runner两款工具。使用soanr 的前提是电脑已经安装jdk环境。由于这里使用的是默认数据库,所以对mysql的服务没有要求,对sonqube的版本也没有什么要求,如果后续使用其它数据库的时候,注意版本不支持的问题。 sonqube是相当于sonar的服务端,soanr-runner是sonar的客户端。

  sonqube下载地址:http://www.sonarqube.org/downloads/

  Sonar-Runner下载: http://repo1.maven.org/maven2/org/codehaus/sonar/runner/sonar-runner-dist/2.4/sonar-runner-dist-2.4.zip

  中文补丁包下载: https://github.com/SonarCommunity/sonar-l10n-zh

第二步,下载后,把解压后的sonarqube和soanr-runner文件移动到/usr/lcoal/ 文件夹下,然后进入sonarqube的bin目录。启动相应版本的服务,如果是Mac的话,就选择Mac文件夹,然后执行./soanr start命令,就会看到服务已经启动。然后在浏览器访问http://localhost:9000就会看到,sonar的默认端口为9000。

  其他命令和linux基本类似: ./soanr start

               ./soanr stop

               ./soanr status

在浏览器访问http://localhost:9000后看到的界面

第三步,配置环境变量。vi ~/.bash_profile,然后编辑

export SONAR_HOME=/usr/local/sonarqube-6.3.1
export SONAR_RUNNER_HOME=/usr/local/sonar-runner-2.4  
exportPATH=$PATH:$SONAR_RUNNER_HOME/bin:$JAVA_HOME/bin

编辑完保存,然后source ~/.bash_profile使环境变量生效。可以使用echo $PATH 查看配置的正确性。

这个也不多说, 比较简单

第四步,在项目中使用。使用的话,需要在项目中配置sonar-project.properties文件,位置就和你pom.xml文件的位置一样。配置属性如下:

  这里要重点说一下, 有个坑, 大家参考文献一的时候需要注意了。

sonar.projectKey=xiugr-server-service
sonar.projectName=xiugr-server-service
sonar.projectVersion=1.0
sonar.sourceEncoding=UTF-8
sonar.language=java
sonar.sources=.
sonar.projectBaseDir=src/main/java
sonar.binaries=classes

这是文献一给出的配置信息, 我用这个调试, 总是包BUILD FAILURE 。后来找到原因, 在mac上还需要添加一个配置信息

sonar.java.binaries=.

因为刚开始对这个不太熟悉, 也不知道是缺少啥配置, 走了不少弯路, 这里贴出来,希望大家不要走弯路。

这些个属性很通俗易懂,只需要注意projectkey是唯一的就好。

下面贴出来在idea中的项目结构,和配置文件内容。

接下来,cd到项目路径下,执行sonar-runner命令,看到EXECUTION SUCCESS的时候就意味着你已经执行成功了。 如果失败的话,看你是否是在配置文件的路径下执行的

执行成功后会看到这个界面

然后在去sonar的web页面上就可以看到项目的质量检测信息了

第四步,汉化插件的安装方法

下载地址:https://github.com/SonarQubeCommunity/sonar-l10n-zh

在页面上找最新的中文插件下载地址:https://github.com/SonarQubeCommunity/sonar-l10n-zh/releases/latest)

也可以直接点击上一链接, 下载sonar-l10n-zh-plugin-1.22.jar文件

将文件放入到sonarqube的根目录-->extensions -->plugins下即可。

----------------------------------------------------------------------

二、 使用sonarqube以及配置mysql数据库

  为什么要配置mysql

  存储扫描规则和问题,网页的数据都来自数据库!你自己搭建的服务器,不管是sonarqube还是其他的都需要存数据啊!

  第一步: 新建一个mysql库---名字就叫sonar

    CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;

    CREATE USER ‘sonar’ IDENTIFIED BY ‘sonar’;

    GRANT ALL ON sonar.* TO ‘sonar’@’%’ IDENTIFIED BY ‘sonar’;     GRANT ALL ON sonar.* TO ‘sonar’@’localhost’ IDENTIFIED BY ‘sonar’;

  第二步:修改配置文件confsonar.properties文件

  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就可以了

----------------------------------------------------

参考文献:

1. https://blog.csdn.net/qq_33350186/article/details/72772242 (主要参考文献)

2. https://www.cnblogs.com/fanbi/p/6504513.html

3.https://github.com/SonarQubeCommunity/sonar-l10n-zh

4.https://www.ibm.com/developerworks/cn/java/j-lo-sonar/