思路:
1、在maven的settings.xml文件中如下配置:
<settings> <pluginGroups> <pluginGroup>org.sonarsource.scanner.maven</pluginGroup> </pluginGroups> <profile> <id>sonar</id> <activation> <activeByDefault>true</activeByDefault> </activation> <properties> <sonar.jdbc.url>jdbc:mysql://192.168.32.128:3306/sonar?useUnicode=true&characterEncoding=utf8</sonar.jdbc.url> <sonar.jdbc.driver>com.mysql.jdbc.Driver</sonar.jdbc.driver> <sonar.jdbc.username>sonar</sonar.jdbc.username> <sonar.jdbc.password>sonar</sonar.jdbc.password> <sonar.host.url>http://localhost:9000</sonar.host.url> </properties> </profile> </settings>
2、切换到代码所在的目录,运行如下命令:
mvn clean verify sonar:sonar # In some situation you may want to run sonar:sonar goal as a dedicated step. Be sure to use install as first step for multi-module projects mvn clean install mvn sonar:sonar
3、在sonar控制台就可以看到结果啦。
refurl:http://docs.sonarqube.org/display/SONAR/Analyzing+with+SonarQube+Scanner+for+Maven
注意到,可能会碰到如下错误:
1)、报 entity reference name can not contain character =的错误。
解决方案是:将&换成&
http://maven.40175.n5.nabble.com/Special-URL-characters-td117096.html 解释了原理。
http://blog.csdn.net/afgasdg/article/details/6941712 解决方案
2)、我用的是最简单的demo.但是如果用别人的代码,可能会报phrase.phase is deprecated的错误。
refurl:http://sonarqube-archive.15.x6.nabble.com/Cannot-upgrade-to-Sonar-4-3-because-of-SONAR-5186-drop-support-of-quot-sonar-phase-quot-td5025104.html