Sonar部署准备Sonar数据库配置配置介绍介绍
温馨提示:这篇文章已超过506天没有更新,请注意相关的内容是否还可用!
Sonar介绍
Sonar是一个用于代码品质管控的开放系统。通过软件体系,Sonar可以集成不同的检测软件,代码分析工具,以及大幅集成软件。与持续集成工具(比如/等)不同,Sonar并不是简单地把不同的代码检测软件结果(比如,PMD等)直接显示在Web页面上,而是借助不同的插件对这种结果进行再加工处理,通过量化的方法度量代码品质的差异,从而可以便捷地对不同体量和类型的项目进行代码质量管控。
在对其它软件的支持方面,Sonar不仅提供了对IDE的支持,可以在和IDEA这些软件里联机查看结果;同时Sonar还对长期的大幅集成软件提供了接口支持,可以很便利地在大幅集成中使用Sonar。
另外php仓库管理系统源码,Sonar的插件还可以对Java以外的其它编程语言提供支持,对国际化并且报告文档化也是良好的支持。
Sonar部署
Sonar的相关下载和文档可以在以下的链接中找到:。需要注意最新版的Sonar需要大约JDK1.8及以上版本。
上篇文章我们将要可以顺利的使用Git进行拉去,Sonar的功能就是来检测代码是否有BUG。除了检测代码是否有bug还有其它的功能,比如说:你的代码注释率是多少,代码有一些建议,编写语法的建议。所以我们叫质量管理
Sonar还可以给代码打分,并且引用了科技宅的功能(告诉你有太多地方没改)
Sonar部署
[root@linux-node1 ~]# yum install -y java-1.8.0
[root@linux-node1 ~]# cd /usr/local/src
软件包我们通过wget或者下载,rz上传到服务器#软件包下载:https://sonarsource.bintray.com/Distribution/sonarqube/sonarqube-5.6.zip
[root@linux-node1 src]# unzip sonarqube-5.6.zip
[root@linux-node1 src]# mv sonarqube-5.6 /usr/local/
[root@linux-node1 src]# ln -s /usr/local/sonarqube-5.6/ /usr/local/sonarqube
准备Sonar数据库
如果没有数据库请执行yum-y-
[root@linux-node1 ~]# systemctl start mariadb
[root@linux-node1 ~]# systemctl enable mariadb
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
[root@linux-node1 ~]# mysql_secure_installation
[root@linux-node1 ~]# mysql -uroot -p123456
特别提示:
sonar好像不支持.5,所以即使看日志出现以上error请安装.6以及更高版本
执行sql语句
mysql> FLUSH PRIVILEGES;
配置Sonar
[root@linux-node1 ~]# cd /usr/local/sonarqube/conf/
[root@linux-node1 conf]# ls
sonar.properties wrapper.conf
编写配置文件,修改数据库配置
[root@linux-node1 conf]# vim sonar.properties#我们只需要去配置文件里面修改数据库的认证即可 14 sonar.jdbc.username=sonar #数据库用户 15 sonar.jdbc.password=sonar@pw #数据库密码 23 sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&character Encoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
配置Java访问数据库驱动(可选)
默认情况Sonar有自带的嵌入的数据库,那么你既然使用类是数据库,必须自动复制驱动类到${}//jdbc-//目录下,其它支持的数据库默认提供了驱动。其它数据库的配置可以参考官网文档:
+
启动Sonar
你可以在Sonar的配置文件来配置SonarWeb监听的IP地址和端口,默认是9000端口。
[root@linux-node1 conf]# vim sonar.properties 99 #sonar.web.host=0.0.0.0106 #sonar.web.port=9000
启动命令如下:
[root@linux-node1 ~]# /usr/local/sonarqube/bin/linux-x86-64/sonar.sh startStarting SonarQube...Started SonarQube.
如果有哪些问题可以看一下日志[/usr/local//logs/sonar.log]
检查是否有相应的端口
[root2348/java
#端口是9000哦!
Web登陆:IP:9000
提示:
sonar跟类似,也是以插件为主
sonar安装软件有2种方法:第一种将软件下载完保存在sonar的组件目录,第二种使用web界面来使用安装
存放插件路径[/usr/local////]
安装中文软件
登录:用户名:admin密码:admin
需要重启才会生效
生效后如下图:
我们在安装一个PHP语言
温馨提醒:如果下载不出来我们直接去进行下载,因为我们这个软件都是使用wget进行下载的
我们今天只能使用java的jar包和php,因为我们只安装了java和php的语言软件。如果想使用的程序,就必须安装的语言软件
Sonar插件--->语言软件(预测哪些语言,你就必须安装什么语言的软件)
Sonar通过(扫描器)来对代码进行预测
官方文档:+with++
下载扫描器软件
[root@linux-node1 ~]# wget https://sonarsource.bintray.com/Distribution/sonar-scanner-cli/sonar-scanner-2.8.zip
[root@linux-node1 ~]# unzip sonar-scanner-2.8.zip
[root@linux-node1 ~]# mv sonar-scanner-2.8 /usr/local/
[root@linux-node1 ~]# ln -s /usr/local/sonar-scanner-2.8/ /usr/local/sonar-scanner
我们要将扫描器和sonar关联起来
[root@linux-node1 ~]#打开注释即可
我们今天还要找一个代码进行预测。
sonar插件提供了一个代码的库
:
我们下载插件包:
解压
[root@linux-node1 src]#这里就是PHP的目录
配置文件解释:
如果你想让我扫描,就必须在代码模式下放一个配置文件
[root@linux-node1 php-sonar-runner-unit-tests].xml
#也就是说在项目旁边还要有这个配置文件才可以进行扫描
扫描
#提示:需要在项目文件上面进行执行
[root@linux-node1 php-sonar-runner-unit-tests]# /usr/local/sonar-scanner/bin/sonar-scanner
INFO: Scanner configuration file: /usr/local/sonar-scanner/conf/sonar-scanner.properties
INFO: Project root configuration file: /usr/local/src/sonar-examples-master/projects/languages/php/php-sonar-runner-unit-tests/sonar-project.properties
INFO: SonarQube Scanner 2.8
INFO: Java 1.8.0_111 Oracle Corporation (64-bit)
INFO: Linux 3.10.0-514.2.2.el7.x86_64 amd64
INFO: User cache: /root/.sonar/cache
INFO: Load project repositories
.................................................
.................................................
提示:我们哪个都不指定才会在当面目录下扫描sonar-.文件,根据配置文件进行扫描工作。扫描过后我们在web界面上就可以看见代码的扫描结果
此处的名字,版本都是在sonar-.文件中定义的
质量阈帮我们设置好一个阈值,超过相应的阀值就算有bug
为了让可以在建立项目的之后执行sonar,所以我们必须在上安装软件
目前就可以进行配置,让和sonar结合在一起。这样我们建立项目的之后才会进行代码检测
点击保存
配置
编辑我们的项目,选择最下放。找到构建
对PHP文件进行复制
[root@linux-node1 php-sonar-runner-unit-tests]# cat /usr/local/src/sonar-examples-master/projects/languages/php/php-sonar-runner-unit-tests/sonar-project.properties
sonar.projectKey=org.sonarqube:php-ut-sq-scanner
sonar.projectName=PHP :: PHPUnit :: SonarQube Scanner
sonar.projectVersion=1.0
sonar.sources=src
sonar.tests=tests
sonar.language=php
sonar.sourceEncoding=UTF-8# Reusing PHPUnit reports
sonar.php.coverage.reportPath=reports/phpunit.coverage.xml
sonar.php.tests.reportPath=reports/phpunit.xml
分析的参数
填写完毕后,我们点击保存
我们选择立即构建
提示:此时的是能够点击的
点击可以查看构建输出的内容
#提示:只要没有error就可以
构建完成后php仓库管理系统源码,我们看到此处的可以点击,我们点击就会链接到192.168.56.11:9000就是代码查看器的地址
目前我们将要做到了可以在git上进行拉取代码。并进行测试
我们还可以配置一个完善失败发送邮箱:
在我们项目上面设定形成后操作,选择E-mail
温馨提醒:使用163邮箱发送的通知被163服务器退回了,因此我将修改在的邮箱改成了QQ邮箱
本文来自网络,如有侵权请联系网站客服进行删除
还没有评论,来说两句吧...