不推荐使用SonarQube Post-build Action

时间:2016-09-28 14:28:46

标签: jenkins java-8 sonarqube maven-3 sonarqube-scan

使用Jenkins 1.642.2对我所有的maven项目使用SonarQube 5.6.1进行代码分析。

当我使用maven目标声纳:声纳时,他们需要更多时间来分析文件(文件超过7秒):

[INFO] Sensor SCM Sensor
[INFO] SCM provider for this project is: svn
[INFO] 1079 files to be analyzed
[INFO] 
[INFO] 2/1079 files analyzed
[INFO] 3/1079 files analyzed
[INFO] 4/1079 files analyzed
[INFO] 5/1079 files analyzed

当我使用带有此配置的SonarQube扫描仪时:

SonarQube Server

SonarQube scanner

SonarQube scanner

然后我有这个错误:

WARN: Property 'sonar.jdbc.url' is not supported any more. It will be  ignored. There is no longer any DB connection to the SQ database.
WARN: Property 'sonar.jdbc.username' is not supported any more. It will be ignored. There is no longer any DB connection to the SQ database.
WARN: Property 'sonar.jdbc.password' is not supported any more. It will be ignored. There is no longer any DB connection to the SQ database.
INFO: User cache: /var/lib/jenkins/.sonar/cache
INFO: Load plugins index
INFO: Load plugins index (done) | time=43ms
INFO: SonarQube server 5.6.1
INFO: Default locale: "en_US", source code encoding: "UTF-8" (analysis is  platform dependent)
INFO: Process project properties
INFO: ---------------------------------------------------------------------- --
INFO: EXECUTION FAILURE
INFO: ------------------------------------------------------------------------
INFO: Total time: 1.621s
INFO: Final Memory: 39M/132M
INFO: ------------------------------------------------------------------------
ERROR: Error during SonarQube Scanner execution
ERROR: You must define the following mandatory properties for 'Unknown':   sonar.projectKey, sonar.projectName, sonar.projectVersion, sonar.sources
ERROR: 
ERROR: Re-run SonarQube Scanner using the -X switch to enable full debug    logging.
Build step 'Execute SonarQube Scanner' marked build as failure
Finished: FAILURE

我的设置文件:

<profile>
        <id>sonar</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
        <properties>
            <sonar.jdbc.url>
            jdbc:mysql://11.230.5.88:3306/sonar
            </sonar.jdbc.url>
            <sonar.jdbc.username>sonar</sonar.jdbc.username>
            <sonar.jdbc.password>sonar</sonar.jdbc.password>
            <!-- Optional URL to server. Default value is http://localhost:9000 -->
            <sonar.host.url>
              http://sonarqube-groupe.com/
            </sonar.host.url>
        </properties>
    </profile>

任何想法都可以解决这个问题,因为我有一个问题需要了解新的声纳使用

我必须为maven项目制作一个sonar-project.properties文件吗?

1 个答案:

答案 0 :(得分:8)

您可以并且仍然应该使用构建步骤使用Maven进行分析。如上所述in the docs,您应该首先启用SonarQube服务器配置注入&#34;在全局配置级别,然后在您的构建中启用构建环境选项&#34;准备SonarQube扫描仪环境&#34;。然后,您可以将Maven目标设置为以下内容:

$SONAR_MAVEN_GOAL -Dsonar.host.url=$SONAR_HOST_URL -Dsonar.login=$SONAR_AUTH_TOKEN