zoukankan      html  css  js  c++  java
  • windows上安装sonar并使用其分析项目

    前言:

    sonar有3部分组成:

    1、服务端:显示分析结果和sonar相关配置,即sonarqube

    2、客户端:对项目运行源代码进行运算和分析,即sonarscanner

    3、数据库:存储sonar配置和代码分析结果的数据库

    一、准备安装包及必要环境配置

    1、安装jdk1.8,maven

    2、安装mysql,参考:https://www.cnblogs.com/wulixia/p/12852311.html

    3、sonarqube下载,地址:https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-7.6.zip

    4、sonar scanner下载,地址:https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-3.3.0.1492-windows.zip

    5、sonarqube汉化包下载

    版本对应参考:https://github.com/xuhuisheng/sonar-l10n-zh

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

    注意:在sonarqube web上直接选择安装汉化版本,会报错,因为和sonar版本不兼容,下载指定的jar包到extensionsplugins目录下重启即可

    二、SonarQube安装及配置

    SonarQube 支持大多数主流关系型数据库(例如 Microsoft SQL Server, MySQL, Oracle, PostgreSQL 等),默认使用H2数据库,可以直接运行启动,此处配置MySQL数据库。

    1、mysql创建数据库

     CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci; 
    

    2、创建用户并给用户分配权限

    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';
    FLUSH PRIVILEGES;
      
    

    3、解压sonar的安装包sonarqube-7.6到指定的目录

     切换到conf目录下,对sonar.properties文件进行配置:

     切换到sonarqube-7.6inwindows-x86-64目录下运行启动命令

     看到如下的*** is up表示启动成功

     启动成功后,浏览器访问http://localhost:9000,打开界面

     (上图所示已经汉化并且登录创建过一个项目)默认使用 用户名:admin 密码:admin 可以登录管理员账号。

    下载好中文插件,并移动到sonarqube-7.6extensionsplugins中,再重启sonar即可生效

     重启sonarqube方法:

    先使用命令:tasklist | findstr "java" 找到全部的java进程

    再强制杀死所有的进程:taskkill /PID  6508  /f(6508 为 tasklist 命令查询出来的进程 PID)

    三、sonar-scanner安装配置

    解压sonar-scanner-cli-3.3.0.1492-windows到指定目录

     切换到conf目录下,对sonar-scanner.properties进行配置

    sonar.host.url=http://localhost:9000
    sonar.sorceEncoding=UTF-8
    
    
    sonar.jdbc.username=sonar 
    sonar.jdbc.password=sonar 
    sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
    useConfigs=maxPerformance 
    sonar.sourceEncoding=UTF-8

    配置环境变量

     cmd进入,输入sonar-scanner -v 出现以下信息表示安装成功

     至此sonar-scanner安装成功!

    四、使用sonar-scanner分析项目

    1、点击‘+’号创建一个要分析的项目

    2、输入项目标识,并点击‘设置’按钮

    3、点击‘创建’,创建一个令牌

    4、点击‘继续’按钮

     

    5、选择项目的开发语言以及操作系统

     

     

     6、下载安装sonar-scanner扫描客户端(见步骤三),已经设置过了这一步就可以忽略

     

     7、在你的项目目录下执行扫描命令(直接复制扫描命令即可)

    sonar-scanner.bat 
    -D"sonar.projectKey=test_01" 
    -D"sonar.sources=." 
    -D"sonar.host.url=http://localhost:9000" 
    -D"sonar.login=78e02061dc032e860b862f1******************"
    

    8、分析成功后,登录http://localhost:9000,可以看到分析结果: 

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

    另外还有一种扫描代码的方法:

       1、在项目根目录下新建一个sonar-project.properties文件,输入以下内容:

    # 项目key
    sonar.projectKey=datacheck_test
    # 项目名字
    sonar.projectName=datacheck_test
    # 项目版本
    sonar.projectVersion=1.0     
    # 要分析的源码的目录 多个目录用英文逗号隔开
    sonar.sources=.
    # 新版的需要加上binaries这个属性,否则无法解析,我这里是Java项目,所以部署后有对应的classes文件夹        
    #sonar.java.binaries=WebRoot/WEB-INF/classes
    # 语言
    #sonar.language=python       
    # 编码 
    sonar.sourceEncoding=UTF-8 
    # 指定分支
    sonar.branch.name=branch
    

    2、启动sonarqube
    3、在cmd命令中输入sonar-runner,项目会开始进行分析
    4、打开http://localhost:9000/,可以看到项目分析进度,分析成功后会自动生成报告,点击对应的BUG就可以查看代码分析和解决方法了

  • 相关阅读:
    C++ 中static 使用大全
    JsonCpp 简单使用
    [转]C++ string的trim, split方法
    线程函数
    C++ 读写文件流
    JQ_返回顶部
    JQ_开发经验
    JQ_五星级评分特效
    JQ_One()函数特效
    JQ_插件开发
  • 原文地址:https://www.cnblogs.com/wulixia/p/14465944.html
Copyright © 2011-2022 走看看