我用的软件版本如下:
SonarQube: 4.4
sonar-runner:2.4
sonar-cxx-plugin-0.9.1.jar(开源的C++分析插件)
数据库使用的是mysql
自己写了个VC++测试工程,代码很简单,如下:
#include "stdafx.h"
int main(int argc, char* argv[]) { printf("Hello World!\n");
int a = 1;
printf("helloworld!"); return 0; }
\sonarqube-4.4\conf目录下的sonar.properties文件配置如下:
sonar.jdbc.username=root sonar.jdbc.password=root
#----- MySQL 5.x sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true sonar.jdbc.driverClassName:com.mysql.jdbc.Driver
\sonar-runner-2.4\conf目录下的sonar-runner.properties文件配置如下:
#----- Default SonarQube server sonar.host.url=http://localhost:9000
#----- MySQL sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8
#----- Default source code encoding sonar.sourceEncoding=UTF-8
#----- Security (when 'sonar.forceAuthentication' is set to 'true') sonar.login=admin sonar.password=admin
在工程目录下新建了sonar-project.properties文件,配置如下:
sonar.projectKey=SampleProject.key sonar.projectName=SampleProject sonar.projectVersion=2.0 sonar.sources=.\ sonar.sourceEncoding=UTF-8
sonar.language=c++
完成后,使用cmd命令行进入工程目录下,然后使用sonar-runner命令进行分析,结果提示分析成功。
然后在IE9.0浏览器中输入http://localhost:9000进行访问SonarQube服务器。看到的效果界面如下:
我很好奇,为什么检测不出问题。我不知道哪里出现问题了,请各位大牛能给予帮助。万分感谢。
这个插件只是分析已经生成的报告,并非去检查代码,比如配置的规则中有cppcheck库的,那么运行sonar-runner时只会读取你用cppcheck检查后生成的问题报告###### 我也遇到过同样的问题,我是这样解决的:
1、要先安装cppcheck工具。安装命令如下:
make SRCDIR=build CFGDIR=/usr/bin/cfg HAVE_RULES=yes
make install CFGDIR=/usr/bin/cfg
2、在需要分析的项目里面执行“
@mm3b712看了demo项目,也是引用下面的参数sonar.cxx.cppcheck.reportPath=build/cppcheck-report.xml
sonar.cxx.pclint.reportPath=build/pclint-report.xml sonar.cxx.coverage.reportPath=build/gcovr-report*.xml
sonar.cxx.coverage.itReportPath=build/gcovr-report*.xml
sonar.cxx.coverage.overallReportPath=build/gcovr-report*.xml
sonar.cxx.valgrind.reportPath=build/valgrind-report.xml
sonar.cxx.vera.reportPath=build/vera++-report.xml
sonar.cxx.rats.reportPath=build/rats-report.xml
sonar.cxx.xunit.reportPath=build/xunit-report.xml
###### make SRCDIR=build CFGDIR=/usr/bin/cfg HAVE_RULES=yes
make install CFGDIR=/usr/bin/cfg
通过这两句 看着像Linux系统下,请问windows系统下该怎么办,我也遇到了同样的问题。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。