关于sonarqube:sonar.host.url不适用于sonar-maven-plugin:2.7

sonar.host.url not working with sonar-maven-plugin:2.7

将我的POM升级到sonar-maven-plugin:2.7后,该配置不再起作用。 我在settings.xml中的配置是这样的:

1
2
3
4
5
6
7
8
9
10
<profile>
  <id>sonar</id>
  <properties>
    <sonar.jdbc.url>jdbc:postgresql://my.server:5432/sonar</sonar.jdbc.url>
    <sonar.jdbc.driverClassName>org.postgresql.Driver</sonar.jdbc.driverClassName>
    <sonar.jdbc.username>xxxxx</sonar.jdbc.username>
    <sonar.jdbc.password>yyyyy</sonar.jdbc.password>
    <sonar.host.url>http://my.server</sonar.host.url>
  </properties>
</profile>

当然,构建是从-Psonar开始的。 使用2.6版,一切都很好,使用2.7版,我得到了

1
2
3
4
5
[INFO] --- sonar-maven-plugin:2.7:sonar (default-cli) @ myproject ---
[INFO] User cache: C:\\Users\\me\\.sonar\\cache
[ERROR] SonarQube server 'http://localhost:9000' can not be reached
...
[ERROR] Failed to execute goal org.codehaus.mojo:sonar-maven-plugin:2.7:sonar (default-cli) on project myproject: Fail to download libraries from server: java.net.ConnectException: Connection refused: connect -> [Help 1]

在两种情况下,都使用-X启动构建可为我提供正确的mojo配置,尤其是日志中的URL仍然正确

1
[DEBUG]   (f) sonarHostURL = http://my.server

即使删除提到的缓存目录也无济于事。

除了管理2.6版插件外,我该怎么办?


我们正在调查这个问题。票证已创建:https://jira.sonarsource.com/browse/MSONAR-129

同时,您可以将SQ插件锁定为2.6版,也可以使用命令行传递所有属性。


解决方法:将-Dsonar.host.url = http://my.server:9000添加到mvn命令对我有用


比禁用插件更好,您可以将插件版本固定为2.6,考虑到sonar.host.url,它可以正常工作。

例如,在我的情况下,使用Maven:

1
2
3
4
5
6
7
8
9
10
<pluginManagement>
  </plugins>
    <plugin>
      <groupId>org.codehaus.mojo</groupId>
      sonar-maven-plugin</artifactId>
      <version>2.6</version>
      <!-- sonar.host.url not working with version 2.7 -->
    </plugin>
  </plugins>
</pluginManagement>

我在CI服务器中使用完全合格的目标来运行声纳目标:

1
mvn org.codehaus.mojo:sonar-maven-plugin:2.6:sonar

由于我们在TeamCity中使用模板,因此这并不是什么大麻烦。我们仍然对该事件感到有些惊讶。


1
mvn -Dsonar.host.url=http://localhost:9000 org.codehaus.mojo:sonar-maven-plugin:2.6:sonar

1
mvn -Dsonar.host.url=http://localhost:9000 org.sonarsource.scanner.maven:sonar-maven-plugin:3.2:sonar

为我工作:

enter image description here


在重新解决所有问题之前,我没有为所有任务禁用声纳,而是重新配置了所有任务。我加了

true

到settings.xml中的声纳配置文件。