亲测有效

环境: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访问扫描结果。

代码检查工具sonarqube介绍及使用的更多相关文章

  1. 代码检查工具sonarqube介绍

    SonarQube 是一款用于代码质量管理的开源工具,它主要用于管理源代码的质量.通过插件形式,可以支持众多计算机语言. 比如 java, C#, go,C/C++, PL/SQL,Cobol,Jav ...

  2. Android 代码检查工具SonarQube

    http://blog.csdn.net/rain_butterfly/article/details/42170601 代码检查工具能帮我们检查一些隐藏的bug,代码检查工具中sonar是比较好的一 ...

  3. [原创]Java静态代码检查工具介绍

    [原创]Java静态代码检查工具介绍 一  什么是静态代码检查? 静态代码分析是指无需运行被测代码,仅通过分析或检查源程序的语法.结构.过程.接口等来检查程序的正确性,找出代码隐藏的错误和缺陷,如参数 ...

  4. 代码检查工具jshint和csslint

    前面的话 Douglas Crockford大神根据自己的理念用JavaScript写了一个JavaScript代码规范检查工具,这就是JSLint.后来非常流行,也的确帮助了广大的JavaScrip ...

  5. CSS代码检查工具stylelint

    前面的话 CSS不能算是严格意义的编程语言,但是在前端体系中却不能小觑. CSS 是以描述为主的样式表,如果描述得混乱.没有规则,对于其他开发者一定是一个定时炸弹,特别是有强迫症的人群.CSS 看似简 ...

  6. Python静态代码检查工具Flake8

    简介 Flake8 是由Python官方发布的一款辅助检测Python代码是否规范的工具,相对于目前热度比较高的Pylint来说,Flake8检查规则灵活,支持集成额外插件,扩展性强.Flake8是对 ...

  7. 《Android Studio实用指南》7.1 AndroidStudio代码检查工具概述

    本文节选自<Android Studio实用指南> 作者: 毕小朋 目前本书已上传到百度阅读, 在百度中搜索[Anroid Studio实用指南]便可以找到本书. Android Stud ...

  8. 《Android Studio有用指南》7.1 AndroidStudio代码检查工具概述

    本文节选自<Android Studio有用指南> 作者: 毕小朋 博客: http://blog.csdn.net/wirelessqa 眼下本书已上传到百度阅读, 在百度中搜索[Anr ...

  9. PC-lint 简明教程(C/C++静态代码检查工具)

    前言 PC-lint是一款小而强大的C/C++静态代码检查工具,它可以检查未初始化变量,数组越界,空指针等编译器很难发现的潜在错误.在很多专业的软件公司如Microsoft,PC-Lint检查无错误无 ...

随机推荐

  1. netty使用MessageToByteEncoder 自定义协议(四)

    开发应用程序与应用程序之间的通信,程序之前通信 需要定义协议,比如http协议. 首先我们定义一个协议类 package com.liqiang.SimpeEcode; import java.sql ...

  2. HDU4572 Bottles Arrangement

    /* HDU4572 Bottles Arrangement http://acm.hdu.edu.cn/showproblem.php?pid=4572 数论 找规律 题意:有m行n列和1-n的数各 ...

  3. btrfs

    https://docs.docker.com/storage/storagedriver/btrfs-driver/ $ sudo cat /proc/filesystems | grep btrf ...

  4. Redis容量及利用计划

    在利用Redis过程当中,咱们发明了很多Redis分歧于Memcached,也差别于MySQL的特点.(本文首要会商Redis未启用VM撑持环境) 1. Schema MySQL: 需事先设计Memc ...

  5. (hdu step 7.2.2)GCD Again(欧拉函数的简单应用——求[1,n)中与n不互质的元素的个数)

    题目: GCD Again Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total ...

  6. ural 1707. Hypnotoad's Secret(线段树)

    题目链接:ural 1707. Hypnotoad's Secret 题目大意:给定N和M,然后N组s0, t0, Δs, Δt, k,每组能够计算出k个星星的坐标:M组a0, b0, c0, d0, ...

  7. 用Thinphp发送电子邮件的方法

    好长时间没有动php了,突然想用thinkphp发送电子邮件,可是查阅了书籍都写的非常乱.没有继续看下去.这里找到了一个比較好的方法: 第一步:首先我们要引入一个外部类库:Mail.class.php ...

  8. 一种加快在苹果app store中上架的方法

    预计近期苹果app应用上架的比較多,审核比較慢,如今一个app从提交到上架短则7.8天.长则2.3个星期.我在实际上线应用时,总结了一个简单有用的小技巧,能够加快上架时间,近期使用这样的方法后.我们基 ...

  9. WinForm使用CefSharp内嵌chrome浏览器

    先贴运行图:亲测可用!以图为证! 开始!1.创建winform程序,使用.NET 4.5.2或以上(vs2010最高支持.NET 4.0,我使用的是vs2017).这一步容易忽略,简单的说就是将项目. ...

  10. 【翻译自mos文章】Oracle GoldenGate 怎么在源头的传输进程和目的端的server/collector进程之间分配 port?

    Oracle GoldenGate 怎么在源头的传输进程和目的端的server/collector进程之间分配 port? 来源于: How Does GoldenGate Allocates Por ...