Sonarqube环境搭建
1、安装JDK
copy jdk-7u51-linux-x64.rpm到/usr/java
rpm –ivh jdk-7u51-linux-x64.rpm
修改环境变量
export JAVA_HOME=/usr/java/jdk1.7.0_51
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
export PATH=$JAVA_HOME/bin:$PATH
保存文件,并运行使其环境变量生效
source /etc/profile
检查是否安装成功
java -version
2、安装Tomcat6
copy apache-tomcat-7.0.50-windows-x64.zip到/usr/share
unzip apache-tomcat-7.0.50-windows-x64.zip
修改环境变量
export CATALINA_HOME=/usr/share/tomcat7
export CLASSPATH=$JAVA_HOME/lib:$CATALINA_HOME/lib
export PATH=$PATH:$CATALINA_HOME/bin
保存文件,并运行使其环境变量生效
source /etc/profile
增加内存
vi /usr/share/tomcat7/bin/catalina.sh
添加:JAVA_OPTS="-Xms8g -Xmx8g -Xss1024K -XX:PermSize=512m -XX:MaxPermSize=2g"
启动tomcat
3、安装maven,并配置maven环境变量
下载安装apache-maven-3.1.1-bin.zip到指定目录
配置环境变量,编辑/etc/profile文件,添加如下代码
# maven
export MAVEN_HOME=/usr/local/maven3
export M2_HOME=$MAVEN_HOME
export PATH=$MAVEN_HOME/bin:$PATH
保存文件,并运行使其环境变量生效
source /etc/profile
在制台输入如下命令,如果能看到Maven相关版本信息,则说明Maven已经安装成功
mvn -v
4¡ 数据库配置并增加权限
192.168.100.11myql密码是:root
进入数据库命令
#mysql -u root -p
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;
5、下载sonar包
将下载的sonarqube-4.3.zip包解压至Linux路径/usr/zhuweiliang
修改emperor、top-project项目的pom.xml文件,并且提交到SVN
父节点Pom.xml文件添加的内容:
构建项目时添加插件配置如下:
参考文件https://svn.gxwsxx.com/svn/gxwscode/trunk/emperor/pom.xml或https://svn.gxwsxx.com/svn/gxwscode/trunk/top-project/pom.xml
应用项目pom.xml添加内容:
参考文件https://svn.gxwsxx.com/svn/gxwscode/trunk/web-bank-house/pom.xml
6¡ 打开/usr/local/maven3/conf的settings.xml文件,增加如下配置:
jdbc:mysql:// localhost:3306/sonar?useUnicode=true&characterEncoding=utf8
7.编辑
检查sonar端口号:查看是9000还是9001,然后修改对应的文件
配置数据库设置,默认经提供了各类数据库的支持
这里使用mysql,因此取消mysql模块的注释
进入/zhuweiliang/sonar/conf/sonar.properties
打开注释:
#----- MySQL 5.x
# Comment the embedded database and uncomment the following line to use MySQL
sonar.jdbc.url=jdbc:mysql://192.168.100.11:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true
8、修改sonar-runner的配置文件
切换至sonar-runner的安装目录下,修改sonar-runner.properties
根据实际使用数据库情况取消相应注释
[java] view plaincopy
#Configure here general information about the environment, such as SonarQube DB details for example
#No information about specific project should appear here
#----- Default SonarQube server
sonar.host.url=http://localhost:9000
#----- PostgreSQL
#sonar.jdbc.url=jdbc:postgresql://localhost/sonar
#----- MySQL
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8
#----- Oracle
#sonar.jdbc.url=jdbc:oracle:thin:@localhost/XE
#----- Microsoft SQLServer
#sonar.jdbc.url=jdbc:jtds:sqlserver://localhost/sonar;SelectMethod=Cursor
#----- Global database settings
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
#----- Default source code encoding
sonar.sourceEncoding=UTF-8
#----- Security (when 'sonar.forceAuthentication' is set to 'true')
sonar.login=admin
sonar.password=admin
9、检查sonar防火墙是否已经打开
/etc/init.d/iptables status
手动添加防火墙端口
iptables -I INPUT -p tcp --dport 9000 -j ACCEPT
10.启动服务
目录切换至sonar的
#./sonar.sh start 启动服务
#./sonar.sh stop 停止服务
#./sonar.sh restart 重启服务
至此,sonar就安装好了
在命令行进入到项目文件的目录中去,然后再输入mvn clean install ,mvn sonar:soanr进行测试
访问http:\\localhost:9000即可
11、Jenkins配置测试环境和生产环境打包时加入跳过测试代码。
Goals and options : clean install -Dmaven.test.skip=true
12、导入项目到sonar
cd /usr/javacode
导入源码
svn co –usrname liuchaoqing –password liuchaoqing https://svn.gxwsxx.com/svn/gxwscode/trunk
/service-let-join
进入到项目根目录:
cd /usr/javacode/service-let-join
mvn clean install
mvn sonar:sonar
解析:mvn clean install是mvn install 和mvn clean 的命令组合使用,删除target目录下编译的内容,后马上进行构建。
mvn sonar:sonar是运行sonar maven plugin来检查项目中的代码。