为什么我的sonarqube 启动启动不了

Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量,可以从七个维度检测代码质量
通过插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等等二十几种编程语言的代码质量管理与检测
sonarQube能带来什么?
Developers' Seven Deadly Sins
1.糟糕的复杂度分布
& 文件、类、方法等,如果复杂度过高将难以改变,这会使得开发人员难以理解它们,
& 且如果没有自动化的单元测试,对于程序中的任何组件的改变都将可能导致需要全面的回归测试
& 显然程序中包含大量复制粘贴的代码是质量低下的
& sonar可以展示源码中重复严重的地方
3.缺乏单元测试
& sonar可以很方便地统计并展示单元测试覆盖率
4.没有代码标准
& sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具规范代码编写
5.没有足够的或者过多的注释
& 没有注释将使代码可读性变差,特别是当不可避免地出现人员变动时,程序的可读性将大幅下降
& 而过多的注释又会使得开发人员将精力过多地花费在阅读注释上,亦违背初衷
6.潜在的bug
& sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具检测出潜在的bug
7.糟糕的设计(原文Spaghetti Design,意大利面式设计)
& 通过sonar可以找出循环,展示包与包、类与类之间的相互依赖关系
& 可以检测自定义的架构规则
& 通过sonar可以管理第三方的jar包
& 可以利用LCOM4检测单个任务规则的应用情况
& 检测耦合
关于Spaghetti Design:http://docs.codehaus.org/display/SONAR/Spaghetti+Design
通过sonar可以有效检测以上在程序开发过程中的七大问题
SonarQube安装
1.已安装JAVA环境
2.已安装有MySQL数据库
软件下载地址:http://www.sonarqube.org/downloads/
下载SonarQube与SonarQube Runner
中文补丁包下载:http://docs.codehaus.org/display/SONAR/Chinese+Pack
1.数据库配置
进入数据库命令
#mysql -u root -p
mysql& CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_&
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;
2.安装sonar与sonar-runner
将下载的sonar-3.7.zip包解压至Linux某路径如/usr/local
将下载的sonar-runner-dist-2.3.zip包解压某路径/usr/local
添加SONAR_HOME、SONAR_RUNNER_HOME环境变量,并将SONAR_RUNNER_HOME加入PATH
修改sonar配置文件
编辑&install_directory&/conf/sonar.properties文件,配置数据库设置,默认已经提供了各类数据库的支持
这里使用mysql,因此取消mysql模块的注释
#vi sonar.properties
修改sonar-runner的配置文件
切换至sonar-runner的安装目录下,修改sonar-runner.properties
根据实际使用数据库情况取消相应注释
3.添加数据库驱动
除了Oracle数据库外,其它数据库驱动都默认已经提供了,且这些已添加的驱动是sonar唯一支持的,因此不需要修改
如果是Oracle数据库,需要复制JDBC驱动至&install_directory&/extensions/jdbc-driver/oracle目录
4.启动服务
目录切换至sonar的&install_directory&/bin/linux-x86-64/目录,启动服务
#./sonar.sh start & 启动服务
#./sonar.sh stop & &停止服务
#./sonar.sh restart 重启服务
至此,sonar就安装好了
访问http:\\localhost:9000即可
5.sonar中文补丁包安装
中文包安装
安装中文补丁包可以通过访问http:\\localhost:9000,打开sonar后,进入更新中心安装
或者下载中文补丁包后,放到SONARQUBE_HOME/extensions/plugins目录,然后重启SonarQube服务
sonar作为Linux服务并开机自启动
新建文件/etc/init.d/sonar,输入如下内容:
SonarQube开机自启动(Ubuntu, 32位):
sudo ln -s $SONAR_HOME/bin/linux-x86-32/sonar.sh /usr/bin/sonar
sudo chmod 755 /etc/init.d/sonar
sudo update-rc.d sonar defaults
SonarQube开机自启动(RedHat, CentOS, 64位):
sudo ln -s $SONAR_HOME/bin/linux-x86-64/sonar.sh /usr/bin/sonar
sudo chmod 755 /etc/init.d/sonar
sudo chkconfig --add sonar
使用SonarQube Runner分析源码
已安装SonarQube Runner且环境变量已配置,即sonar-runner命令可在任意目录下执行
1.在项目源码的根目录下创建sonar-project.properties配置文件
以android项目为例:
注:要使用Android Lint
规则分析需要先访问http:\\localhost:9000更新中心添加Android Lint插件,使其可以分析Android Lint规则
2.执行分析
切换到项目源码根目录,执行命令
# sonar-runner
分析成功后访问http:\\localhost:9000即可查看分析结果
不同参数的意思:
http://docs.codehaus.org/display/SONAR/Analysis+Parameters
不同项目的源码分析示例下载:
/SonarSource/sonar-examples/zipball/master
最后,当然了,得与IDE相关联,才能更方便地实时查看
以Eclipse为例,请见:http://docs.sonarqube.org/display/SONAR/SonarQube+in+Eclipse
sonarQube官网地址:http://www.sonarqube.org/
sonarQube官方文档地址:http://docs.codehaus.org/display/SONAR/Documentation
sonarQube示例地址:http://nemo.sonarqube.org/
网上另两篇相关的文章:/gao241/p/3190701.html
& & & & & & & & & & & & & & & & & & & &/open-source/1307345.html
本文已收录于以下专栏:
相关文章推荐
1.1 安装依赖
需要保证Oracle JRE 8 及以上,或者 OpenJDK 8
及以上(如下安装 openjdk
# add-apt-repository ppa:openjd...
首先 下载sonar :http://www.sonarsource.org/downloads/
我下载的version是:3.41版本
接下来 安装mysql ,这个就不多说了
创建一个名为...
1. Prepare database
1.1yum install WBXMySQL-server -y
1.2mysql -uroot -p
DROP DATABASE sona...
Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量,可以从七个维度检测代码质量
通过插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,Java...
首先,建议大家下一个myEclipse10(有同事用版本9的出现了很多问题,so。。。),myEclipse10需要我们下载一个注册破解软解进行破解才能使用。 
        这里多说一点:我们发现...
1.    SonarQube简单介绍
SonarQube能够提供对代码的一整套检查扫描和分析功能,拥有一套服务器端程序,然后再通过客户端或者别的软件的插件的形式完成对各开发环境和软件的支持。
1. 下面的安装部署基于Linux系统环境:centos 6(64位),其它Linux版本可能有所差异。
2. 网上有人说tair安装失败可能是因为gcc版本问题,高版本的g...
他的最新文章
讲师:汪剑
讲师:刘道宽
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)Windows 无法启动 SonarQube 服务(位于 本地计算机 上)。
错误 1067: 进程意外终止。
_________________________________________________________________________
解决方法:配置sonarqube属性中的登录信息,如下图:
本文已收录于以下专栏:
相关文章推荐
SonarQube的安装、配置与使用
SonarQube是管理代码质量一个开放平台,可以快速的定位代码中潜在的或者明显的错误,下面将会介绍一下这个工具的安装、配置以及使用。
1、什么是Sonar?
Sonar是一个用于代码质量管理的开源平台,可以从七个维度检测代码质量,通过插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,JavaSc...
sonar服务器端和客户端的安装和使用
sonarqube6 环境变量配置
SonarQube的安装、配置与使用
SonarQube是管理代码质量一个开放平台,可以快速的定位代码中潜在的或者明显的错误,下面将会介绍一下这个工具的安装、配置以及使用。
准备工作;...
依照/winner-0715/p/5599350.html安装时完成第二步配置后,StartSonar.bat始终无法启动,我用的sonarQube5.6....
一个新项目准备上线提测了,为了在提测之前做一下代码走查,同时了解项目目前的质量情况,就在本地搭建了一套sonar环境。搭建的过程中遇到了很多问题,sonar官方已不再维护Eclipse的svn插件,所...
sonarqube6启动失败
Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量,可以从七个维度检测代码质量
通过插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,Java...
持续集成之代码质量管理-Sonar [三]标签(空格分隔): JenkinsSonar介绍  Sonar 是一个用于代码质量管理的开放平台。通过插件机制,Sonar 可以集成不同的测试工具,代码分析工...
他的最新文章
讲师:汪剑
讲师:刘道宽
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)17:34 提问
sonar首次启动报错,百思不得。
--& Wrapper Started as Daemon
Launching a JVM...
Wrapper (Version 3.2.3)
Tanuki Software, Inc.
All Rights Reserved.
17:22:49 INFO
app[o.s.p.m.JavaProcessLauncher] Launch process[search]: /usr/local/jdk1.8/jre/bin/java -Djava.awt.headless=true -Xmx1G -Xms256m -Xss256k -Djava.net.preferIPv4Stack=true -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+HeapDumpOnOutOfMemoryError -Djava.io.tmpdir=/usr/local/sonar/temp -cp ./lib/common/*:./lib/search/* org.sonar.search.SearchServer /tmp/sq-process072123properties
17:22:49 INFO
es[o.s.p.ProcessEntryPoint]
Starting search
17:22:49 INFO
es[o.s.s.SearchSettings]
Elasticsearch listening on 127.0.0.1:9001
17:22:49 INFO
es[o.elasticsearch.node]
[sonar-0] version[1.7.2], pid[2571], build[e4-09-14T09:49:53Z]
17:22:49 INFO
es[o.elasticsearch.node]
[sonar-0] initializing ...
17:22:49 INFO
es[o.e.plugins]
[sonar-0] loaded [], sites []
17:22:50 INFO
es[o.elasticsearch.env]
[sonar-0] using [1] data paths, mounts [[/ (/dev/sda3)]], net usable_space [111.1gb], net total_space [125.6gb], types [ext4]
17:22:51 WARN
es[o.e.bootstrap]
JNA not found. native methods will be disabled.
17:22:52 INFO
es[o.elasticsearch.node]
[sonar-0] initialized
17:22:52 INFO
es[o.elasticsearch.node]
[sonar-0] starting ...
17:22:52 INFO
es[o.e.transport]
[sonar-0] bound_address {inet[/127.0.0.1:9001]}, publish_address {inet[/127.0.0.1:9001]}
17:22:52 INFO
es[o.e.discovery]
[sonar-0] sonarqube/OLzNZ47NQRa0wZYzKc659Q
17:22:56 INFO
es[o.e.cluster.service]
[sonar-0] new_master [sonar-0][OLzNZ47NQRa0wZYzKc659Q][localhost][inet[/127.0.0.1:9001]]{rack_id=sonar-0}, reason: zen-disco-join (elected_as_master)
17:22:56 INFO
es[o.elasticsearch.node]
[sonar-0] started
17:22:56 INFO
es[o.e.gateway]
[sonar-0] recovered [1] indices into cluster_state
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=160m; support was removed in 8.0
17:22:58 INFO
app[o.s.p.m.Monitor] Process[search] is up
17:22:58 INFO
app[o.s.p.m.JavaProcessLauncher] Launch process[web]: /usr/local/jdk1.8/jre/bin/java -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Djruby.management.enabled=false -pile.invokedynamic=false -Xmx768m -Xms256m -XX:MaxPermSize=160m -XX:+HeapDumpOnOutOfMemoryError -Djava.net.preferIPv4Stack=true -Djava.io.tmpdir=/usr/local/sonar/temp -cp ./lib/common/*:./lib/server/*:/usr/local/sonar/lib/jdbc/mysql/mysql-connector-java-5.1.35.jar org.sonar.server.app.WebServer /tmp/sq-process2006271properties
17:22:59 INFO
web[o.s.p.ProcessEntryPoint] Starting web
17:22:59 INFO
web[o.s.s.app.Webapp] Webapp directory: /usr/local/sonar/web
17:23:00 INFO
web[o.a.c.h.Http11NioProtocol] Initializing ProtocolHandler ["http-nio-0.0.0.0-9000"]
17:23:00 INFO
web[o.a.t.u.n.NioSelectorPool] Using a shared selector for servlet write/read
17:23:01 INFO
web[o.e.plugins] [sonar-0] loaded [], sites []
17:23:02 INFO
web[o.s.s.p.ServerImpl] SonarQube Server / 5.2 / f045be98be3ba032b6b19deeeb91803b
17:23:02 INFO
web[o.sonar.db.Database] Create JDBC data source for jdbc:mysql://192.168.22.220:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
17:23:03 ERROR web[o.a.c.c.C.[.[.[/]] Exception sending context initialized event to listener instance of class org.sonar.server.platform.PlatformServletContextListener
org.sonar.api.utils.MessageException: Current version is too old. Please upgrade to Long Term Support version firstly.
17:23:03 INFO
web[jruby.rack] jruby 1.7.9 (ruby-1.8.7p370)
87b108a on Java HotSpot(TM) 64-Bit Server VM 1.8.0_45-b14 [linux-amd64] 17:23:03 INFO
web[jruby.rack] using a shared (threadsafe!) runtime
17:23:08 ERROR web[jruby.rack] initialization failed
org.jruby.rack.RackInitializationException: java.lang.NullPointerException**
at org.jruby.rack.RackInitializationException.wrap(RackInitializationException.java:31) ~[jruby-rack-1.1.13.2.jar:na]
at org.jruby.rack.RackApplicationFactoryDecorator.init(RackApplicationFactoryDecorator.java:98) ~[jruby-rack-1.1.13.2.jar:na]
at org.jruby.rack.RackServletContextListener.contextInitialized(RackServletContextListener.java:50) ~[jruby-rack-1.1.13.2.jar:na]
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4720) [tomcat-embed-core-8.0.18.jar:8.0.18]
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5154) [tomcat-embed-core-8.0.18.jar:8.0.18]
按赞数排序
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!
我也遇到了类似的问题
你的解决了么
其他相关推荐

我要回帖

更多关于 sonarqube jenkins 的文章

 

随机推荐