文档章节

sonar-关于安装配置(一)

 大老米
发布于 2015/09/02 18:13
字数 837
阅读 743
收藏 6

安装环境:

    本地mac机器(不同操作系统其实影响不大,参考官网)

预装环境:

    jdk1.8

    关系型数据库(本人用mysql5.6)

安装配置步骤:

1、下载安装sonarqube 以及 sonar-runner

    下载地址:http://www.sonarqube.org/downloads/(官网地址)

    注:sonar-runner是sonarqube分析源代码的命令行工具

    将下载的sonarqube-5.1.2.zip和sonar-runner-dist-2.4.zip解压到自定义目录(我在本机解压到了/work/local)

2、配置环境变量

    添加SONAR_HOME、SONAR_RUNNER_HOME环境变量,并将SONAR_RUNNER_HOME加入PATH,代码如下:

export SONAR_HOME=/work/soft/sonarqube-5.1.2
export SONAR_RUNNER_HOME=/work/soft/sonar-runner-2.4
export PATH=${PATH}:${SONAR_RUNNER_HOME}/bin

    这样就将sonarqube环境变量配置完成了。退出命令行,在打开,输入echo $SONAR_HOME,检验是否会有路径输出。

3、创建数据库

    以管理员身份登陆相应的mysql数据库,执行如下sql:

mysql> CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci; 
mysql> CREATE USER 'sonar' IDENTIFIED BY 'sonar';
mysql> GRANT ALL ON sonar.* TO 'sonar'@'%' IDENTIFIED BY 'sonar';
mysql> GRANT ALL ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'sonar';
mysql> FLUSH PRIVILEGES;

4、配置sonar和sonar-runner

    修改$SONAR_HOME/conf/sonar.properties,添加刚刚创建的数据库连接信息,具体如下:

sonar.jdbc.username:                       sonar
sonar.jdbc.password:                       sonar
sonar.jdbc.url:                            jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true

# Optional properties
sonar.jdbc.driverClassName:                com.mysql.jdbc.Driver

    同样,修改$SONAR_RUNNER_HOME/conf/sonar-runner.properties,添加刚刚创建的数据库连接信息,具体如下:

sonar.jdbc.username:                       sonar
sonar.jdbc.password:                       sonar
sonar.jdbc.url:                            jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true

# Optional properties
sonar.jdbc.driverClassName:                com.mysql.jdbc.Driver

5、启动

    至此,sonar服务器的配置就结束了;接下来就是启动sonar。

    进入到$SONAR_HOME/bin/${相应操作系统对应文件夹}下,启动服务即可

#./sonar.sh start   启动服务
#./sonar.sh stop    停止服务
#./sonar.sh restart 重启服务

    启动完成后访问地址:http://localhost:9000/  如果出来了sonar首页,表示安装成功。


6、安装中文插件(可选)

    如果想要显示中文,在官网的插件列表中找到中文插件(http://docs.sonarqube.org/display/PLUG/Plugin+Library)

    在上面链接找到中文插件发现链接到了github的托管项目(https://github.com/SonarCommunity/sonar-l10n-zh)

    下载下来这个托管项目,使用maven打成一个jar包。

    然后将其放到$SONAR_HOME/extensions/plugins下

    重启sonar服务器,即可发现变成中文了。

7、使用sonar分析普通java工程(假设工程名为:a)

    在工程根目录创建文件sonar-project.properties

    添加类似如下内容:

#required metadata
#projectKey项目的唯一标识,不能重复
sonar.projectKey=xjglxt
sonar.projectName=xjglxt
sonar.projectVersion=1.0
sonar.sourceEncoding=UTF-8
sonar.modules=java-module

# Java module
java-module.sonar.projectName=Java Module
java-module.sonar.language=java
# .表示projectBaseDir指定的目录
java-module.sonar.sources=.
java-module.sonar.projectBaseDir=src
#sonar.binaries=classes

# JavaScript module
#javascript-module.sonar.projectName=JavaScript Module
#javascript-module.sonar.language=js
#javascript-module.sonar.sources=js
#javascript-module.sonar.projectBaseDir=webRoot

# Html module
#html-module.sonar.projectName=Html Module
#html-module.sonar.language=web
#html-module.sonar.sources=pages
#html-module.sonar.projectBaseDir=webRoot

    配置内容基本见名即可知意,就不再赘述了。

    接着通过命令行进入项目根目录下,执行:

sonar-runner

    耐心等待分析结束

    返回http://localhost:9000/  即可看到关于这个项目的分析结果

8、如果是maven工程

    在maven的配置文件$M2_HOME/conf/settings.xml中,找到profiles节点,在其中添加如下配置:

<profile>
      <id>sonar1</id>
      <activation>
        <activeByDefault>true</activeByDefault>
      </activation>
      <properties>
        <sonar.jdbc.url>jdbc:mysql://localhost:3306/sonar?useUnicode=true&amp;characterEncoding=utf8</sonar.jdbc.url>
        <sonar.jdbc.driver>com.mysql.jdbc.Driver</sonar.jdbc.driver>
        <sonar.jdbc.username>sonar</sonar.jdbc.username>
        <sonar.jdbc.password>sonar</sonar.jdbc.password>
        <sonar.host.url>http://localhost:9000</sonar.host.url>
      </properties>
    </profile>

   接着进入到项目根目录,执行如下命令:

mvn sonar:sonar

    即可。

    以上仅仅是本人的实践步骤,如有错误,欢迎指正。

© 著作权归作者所有

粉丝 0
博文 2
码字总数 1164
作品 0
海淀
私信 提问
Jenkins SonarQube进行代码质量检查(学习笔记二十九)

转载:http://www.cnblogs.com/helloIT/p/6684247.html 1.目标 之前已经写过一篇关于Jenkins和SonarQube的一篇博客《jenkins集成sonar》,本文在参考前文的基础上,做了详细的补充。   使用...

sktj
2018/05/11
0
0
iOS Sonar集成流程详解

所有文章目录:http://my.oschina.net/ChenTF/blog/677112 本篇文章地址: http://my.oschina.net/ChenTF/blog/708646 对您有帮助的话, 还请"赞" 一下哦, 有问题可留言或加QQ群:323276186 关于......

ljianbing
2017/05/27
0
0
基于Win10极简SonarQube C#代码质量分析

博客有些好些时间未更新了,这几个月的时间里,离开了实习的公司、大学毕了业、来了新公司、转了户口,有点忙,最近总算稍微闲下来了,打算重新拾起博客,坚持写下去。 言归正转,什么是Son...

码农阿宇
2018/08/03
0
0
[实践]iOS Sonar集成流程详解

所有文章目录:http://my.oschina.net/ChenTF/blog/677112 本篇文章地址: http://my.oschina.net/ChenTF/blog/708646 对您有帮助的话, 还请"赞" 一下哦, 有问题可留言或加QQ群:323276186 关于......

advancer_chen
2016/07/08
4.8K
12
gitlab+jenkins+maven+docker持续集成(十一)——sonarqube及sonarscanner代码审查

Sonar是一个用于代码质量管理的开源平台,用于管理Java源代码的质 量。通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具,比如pmd-cpd、checkstyle、 findbugs...

jackjiaxiong
2017/09/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

还为PDF转Word抓狂?以下神器让你在职场倍受欢迎!

身在职场的你,是否一直在琢磨:如何能让自己在公司更受欢迎?如何才能在办公室里混个好人缘?如何在同事圈里留个好印象?其实,想要让自己成为受欢迎的人,只要让自己成为大家需要的人不就行...

foxit2world
19分钟前
6
0
AndServer+Service打造Android服务器实现so文件调用

so 文件调用 随着 Android 移动安全的高速发展,不管是为了执行效率还是程序的安全性等,关键代码下沉 native 层已成为基本操作。 native 层的开发就是通指的 JNI/NDK 开发,通过 JNI 可以实...

夜幕NightTeam
21分钟前
3
0
Docker下kafka学习三部曲之二:本地环境搭建

在上一章《 Docker下kafka学习,三部曲之一:极速体验kafka》中我们快速体验了kafka的消息分发和订阅功能,但是对环境搭建的印象仅仅是执行了几个命令和脚本,本章我们通过实战来学习如何编写...

程序员欣宸
21分钟前
4
0
萌新推荐!不再为Excel转换PDF发愁,Aspose.Cells for .NET一步到位!

Aspose.Cells for .NET(点击下载)是Excel电子表格编程API,可加快电子表格管理和处理任务,支持构建具有生成,修改,转换,呈现和打印电子表格功能的跨平台应用程序。 将Excel工作簿转换为...

mnrssj
22分钟前
6
0
对于绘画小白怎么画制服?该注意什么?

怎样制作学生服装?想必绘画初学者们常常会想的问题吧,不知道怎样才能画好人物的衣服,别着急,今日就在这儿讲一些关于如何绘画学生衣服校服的教程给我们!期望能够帮到你们! 轻便西装是不...

热爱画画的我
27分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部