Sonar服务器搭建

Sonar服务器搭建

Sonar概述

Sonar 是一个用于代码质量管理的开放平台。通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具。与持续集成工具(例如 Hudson/Jenkins 等)不同,Sonar 并不是简单地把不同的代码检查工具结果(例如 FindBugs,PMD 等)直接显示在 Web 页面上,而是通过不同的插件对这些结果进行再加工处理,通过量化的方式度量代码质量的变化,从而可以方便地对不同规模和种类的工程进行代码质量管理。

在对其他工具的支持方面,Sonar 不仅提供了对 IDE 的支持,可以在 Eclipse 和 IntelliJ IDEA 这些工具里联机查看结果;同时 Sonar 还对大量的持续集成工具提供了接口支持,可以很方便地在持续集成中使用 Sonar。

此外,Sonar 的插件还可以对 Java 以外的其他编程语言提供支持,对国际化以及报告文档化也有良好的支持。

——摘抄自:http://www.ibm.com/developerworks/cn/java/j-lo-sonar/

安装JDK

为了保证稳定还是选择使用JDK7

下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

下载到服务器后,按如下命名执行:

 1 cd /opt
 2 mkdir java
 3 mv ~/jdk-7u71-linux-x64.tar.gz /opt/java
 4 cd /opt/java
 5 tar zxvf jdk-7u71-linux-x64.tar.gz
 6 ln -s jdk1.7.0_71/ jdk   #做软链,方便之后升级
 7 ls -lht    #查看软链
 8 vim ~/.bash_profile
 9 #添加如下内容:
10 #!/bin/bash
11 export JAVA_HOME=/opt/java/jdk
12 export PATH=/opt/java/jdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
13
14 source ~/.bash_profile
15 cp ~/.bash_profile /etc/profile.d/java.sh

执行完后,使用

java -version 验证是否配置成功;

客户端安装配置Maven

过程很简单,与JDK类似,具体如下:

download:http://maven.apache.org/download.cgi

 1 mkdir /opt/maven
 2 mv ~/apache-maven-3.2.5-bin.tar.gz /opt/maven
 3 cd /opt/maven
 4 tar zxvf apache-maven-3.2.5-bin.tar.gz
 5 ln -s apache-maven-3.2.5 apache-maven
 6 vim ~/.bash_profile
 7 #添加如下内容:
 8 export M2_HOME=/opt/maven/apache-maven-3.2.5
 9 export PATH=$M2_HOME/bin:$PATH
10
11 source ~/.bash_profile

执行完毕后,使用 mvn -version 验证是否配置成功;

安装Sonar

download:http://www.sonarqube.org/downloads/

下载到安装包后,使用unzip将其解压到/opt/sonar目录下,到 /opt/sonar/sonarqube-4.5.2/bin/linux-x86-64目录下,

执行:sh sonar.sh start

启动sonar,访问:192.168.11.234:9000

可出现如下画面,说明sonar已安装成功,

配置MySQL

Sonar虽然自带了数据库,但不推荐生产环境使用,我们还是使用MySQL,MySQL服务器在远端(假设IP为192.168.11.212),与Sonar服务器分离,具体配置如下所示:

1 CREATE USER [email protected]‘192.168.11.234‘;
2 CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
3 GRANT ALL PRIVILEGES ON  sonar.* TO ‘sonar‘@‘%‘ IDENTIFIED BY ‘password‘ WITH GRANT OPTION;
4 FLUSH PRIVILEGES;

配置Sonar

配置完MySQL后,需要修改Sonar的配置文件,具体操作如下:

1 cd /opt/sonar/sonarqube-4.5.2/conf
2 vim sonar.properties
3 # 只需修改username,password和url即可
4 sonar.jdbc.username=sonar
5 sonar.jdbc.password=password
6 sonar.jdbc.url=
7 jdbc:mysql://192.168.11.212:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance

配置完成后,到bin目录下执行 sh sonar.sh restart,重启Sonar,再次打开界面,即可看到数据库已配置成功;

客户端Maven执行Sonar扫描

在自己开发环境下Maven的配置文件settings.xml文件中,添加如下内容:

 1 <profile>
 2   <id>sonar</id>
 3   <activation>
 4     <activeByDefault>true</activeByDefault>
 5   </activation>
 6   <properties>
 7     <sonar.jdbc.url>jdbc:mysql://192.168.11.212:3306/sonar?useUnicode=true&amp;characterEncoding=utf8&amp;rewriteBatchedStatements=true&amp;useConfigs=maxPerformance</sonar.jdbc.url>
 8     <sonar.jdbc.driverClassName>com.mysql.jdbc.Driver</sonar.jdbc.driverClassName>
 9     <sonar.jdbc.username>sonar</sonar.jdbc.username>
10     <sonar.jdbc.password>password</sonar.jdbc.password>
11     <sonar.host.url>http://192.168.11.234</sonar.host.url>
12   </properties>
13 </profile>

之后cd到自己的项目根目录,执行:mvn sonar:sonar,就可以完成sonar的扫描了,它会自动把结果扫描保存到mysql,执行完成之后,登陆sonar的页面,即可看到我们刚刚生成的报告;

具体如下图所示:

TODO

生产环境将Sonar部署到Tomcat中;

参考

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

时间: 2025-01-06 05:24:17

Sonar服务器搭建的相关文章

Linux下的SVN服务器搭建

鉴于在搭建时,参考网上很多资料,网上资料在有用的同时,也坑了很多人 本文的目的,也就是想让后继之人在搭建svn服务器时不再犯错,不再被网上漫天的坑爹作品所坑害,故此总结 /******开始*********/ 系统环境:Centos 6.5 第一步:通过yum命令安装svnserve,命令如下: >yum -y install  subversion 此命令会全自动安装svn服务器相关服务和依赖,安装完成会自动停止命令运行 若需查看svn安装位置,可以用以下命令: >rpm -ql subve

Linux NTP 服务器搭建

Linux时间同步服务器搭建 NTP(Network Time Protocol)是用来使计算机时间同步化的一种协议,它使用UDP协议123号端口对外提供服务,它可以使计算机对其服务器或时钟源(如石英钟,GPS等等)做时间的同步化,它可以提供高精准度的时间校正(LAN上与标准间差小于1毫秒,WAN上几十毫秒),且可介由加密确认的方式来防止恶毒的协议攻击.时间按NTP服务器的等级传播.按照离外部UTC源的远近把所有服务器归入不同的Stratum(层)中. 今天做一个项目需要配置一台NTP时间同步服

持续集成(二)工具搭建篇—内网邮件服务器搭建

在我们的持续构建中,项目构建中出现错误提醒,或者开发人员之间的沟通交流,进度汇报的事务,都是离不开一个通信工具,那就是邮件.在我们的项目开发中如果使用第三方的邮件平台,这肯定不是最好的选择,因为第三方的邮件需要外网的支持,但是外网又不是特别的可靠,假如外网链接出现了问题,这样就会不必要的延误我们的工期.再或者很多项目都是保密项目,在开发中只能用内网.但是不用邮件吧又不行.为了解决这个头疼的问题,我们的内网邮件服务器工具就出现了,只要用它安装在我们的服务器上,配置好账户,配置好客户端,在内网里就可

Webrtc服务器搭建

1.WebRTC后台服务: 通话的房间服务器(Room Server) 房间服务器是用来创建和管理通话会话的状态维护,是双方通话还是多方通话,加入与离开房间等等,我们暂时沿用Google部署在GAE平台上的AppRTC这个房间服务器实现,该GAE App的源码可以在github.com上获取.该实现是一个基于Python的GAE应用,我们需要下载Google GAE的离线开发包到我们自己的Linux服务器上来运行该项目,搭建大陆互联网环境下的房间服务器. 通话的信令服务器(Signaling S

windows下subversion服务器搭建

一.下载subversion服务器端和客户端软件 1.subversion下载地址:http://subversion.tigris.org/ 2.svn比较流行的客户端Tortoisesvn下载地址:http://tortoisesvn.net/downloads 3.安装subversion服务器和Tortoisesvn,若是exe文件直接安装,若是zip解压后即可(若是想方便,可以在环境变量中配置bin) 二.创建版本库(Repository) 若是想在f:\svnroot下建立版本库,需

阿里云Windows server 2008服务器搭建VPN 图文教程,购买境外服务器自建vpn,Win8/win10 连接VPN被阻止,出现812错误解决方法

阿里云Windows server 2008服务器搭建VPN 图文教程(超详细) 第一步:购买阿里云服务器,本文使用的是Windows Server 2008 R2 企业版64位中文版 IP地址:47.88.151.129,所属节点:亚太(新加坡) 服务器配置:2核,4GB,带宽10Mbps 第二步: 打开服务器管理器,点击添加角色,如下图: 本帖隐藏的内容然后弹出如下图所示,点击下一步: 点击后,如下图,勾选网络策略和网络服务,然后点击下一步: 接着继续点击下一步,直到弹出如下图所示的页面,勾

git服务器搭建post-receive 钩子部署服务端代码

一.git服务器搭建(服务器用户:root) 安装git $ apt-get install git 创建git用户 $ adduser git$ passwd git //修改git用户密码 创建git仓库 $ cd /home$ mkdir git$ mkdir ./git/.ssh$ touch./git/.ssh/authorized_keys$ cd /home/git$ git init --bare test.git //初始化仓库$ chown -R git:git ../git

linux 下 svn 服务器搭建与配置

Subversion是一个自由,开源的版本控制系统,可以记录每一次文件和目录的修改情况.这样就可以籍此将数据恢复到以前的版本,并可以查看数据的更改细节. linux 下 svn的搭建 首先安装 subversion yum  install -y subversion 使用rpm -qa subversion 查看是否安装完成 安装完成后进行配置 首先在home 下建立svn的数据目录和密码认证目录 说明: svndata 目录用于存放项目目录,svnpassw 目录存放密码及认证文件 在svn

asp.net网站服务器搭建之从零开始

asp.net网站服务器搭建之从零开始 一 IIS(Internet Information Services)安装:  1.选择"控制面板".  2.点"添加或删除程序".   3.选择"添加/删除Windows组件",选中IIS,把系统安装盘放到光驱中,点下一步就可以了.  4. 安装成功后,“控制面板\管理工具”里会有“Internet 信息服务”一项. 二 asp.net环境配置:  下载地址:http://www.cnblogs.com