• 代码检查工具sonarqube介绍及使用


    亲测有效

    环境:springboot+gradle+jdk1.8+sonarqube7.4

    一、说明:

    SonarQube为静态代码检查工具,采用B/S架构,帮助检查代码缺陷,改善代码质量,提高开发速度,通过插件形式,可以支持Java、C、C++、JavaScripe等等二十几种编程语言的代码质量管理与检测。

    通过客户端插件分析源代码,sonar客户端可以采用IDE插件、Sonar-Scanner插件、Ant插件和Maven插件方式等,官网是这么列举的很方便集成:

    每一种都有自己的分析机制对项目源代码进行分析和扫描,并把分析扫描后的结果上传到sonar的数据库,通过sonar web界面对分析结果进行查看管理

    架构图

    下载sonarqube包:https://www.sonarqube.org/。现在下载使用的是7.4。下载后是zip格式,linux下和windows下都是这个包,解压即可。

    下载sonarqube中文包:地址:https://github.com/SonarQubeCommunity/sonar-l10n-zh/releases,根据对应的版本,下载对应的sonar-l10n-zh-plugin-***.jar包,下载下来后,把jar放到sonarqube-7.4/extensions/plugins目录下,

    二、配置

    配置文件为/conf/sonar.properties。可以设置使用的数据库和提供的ip和端口。使用postgresql数据库需要注意不能指定模式名称,必须使用默认的default。如果不使用需要按照文档做更多配置来支持。现在配置如下即可

    sonar.jdbc.url=jdbc:postgresql://192.169.31.106:5432/sonar

    sonar.jdbc.username=postgres

    sonar.jdbc.password=123456

    sonar.web.host=192.169.31.107

    sonar.web.port=9000

    数据库可以不进行配置,若不配置则使用自带数据库,不支持数据迁移。Ip为部署机器的ip

    三、启动

    Windows下:在sonarqube-7.4/bin目录下,根据对应的系统版本,选择对应的文件夹,我的是windows 64位,故选择windows-x86-64目录,打开文件StartSonar.bat ,

    Linux下:

    1、      创建新用户:adduser sonarUser

    2、      改变权限:、chown -R sonarUser:sonarUser  /usr/local/sonarqube-7.4/

    3、      切换至普通用户下,进入bin/linux64启动下:./sonar.sh console  日志启动模式;./sonar.sh start 后台启动模式;第一次启动可以使用日志模式查看下是否能成功启动,若没有问题,停掉后再切换为后台启动

    4、      如果启动出错可以查看下/sonarqube-7.4/temp/conf/es的权限是改变了,如果没有改变则重新执行chown -R sonarUser:sonarUser  /usr/local/sonarqube-7.4/对应目录

    四、gradle集成:

    Build.gradle中配置:

    plugins {

      id "org.sonarqube" version "2.6.2"

    }

    buildscript {
      repositories {
        maven {
          url "https://plugins.gradle.org/m2/"
        }
      }
      dependencies {
        classpath "org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:2.6.2"
      }
    }
    apply plugin: "org.sonarqube"

    在build.gradle平级目录新建gradle.properties配置文件。内容为systemProp.sonar.host.url=http://172.16.31.107:9000。次配置是为了将扫描代码结果传送给sonar服务。

    在gradle命令行输入:gradle sonarqube即可进行扫描。

    五、打开浏览器输入192.169.31.107:9000访问扫描结果。

  • 相关阅读:
    拼linq 时网上整理的一个类
    ASP.NET MVC controller 之间传JS值
    javascript 事件的一点感悟
    C#扩展特性
    javascript对json对象的序列化与反序列化
    javascript序列化json 第二篇
    单列模式
    Foreach 原理
    浅浅一谈 设计模式
    CRC循环冗余校验码总结(转)
  • 原文地址:https://www.cnblogs.com/zxg-blog/p/10156740.html
Copyright © 2020-2023  润新知