2

我正在尝试对我的多语言项目运行声纳 maven 分析,该项目包含许多语言,如 *.java、*.groovy、*.js 等。我已经在我的声纳中安装了所有语言插件并将我的 pomsonar.sources参数配置为src/main,src/test但仍然它只拾取 java 文件。在控制台输出中。我在控制台中收到以下行,表明它只扫描带有模式的文件夹src/main/javasrc/test/java

[INFO] [05:13:57.140] -------------  Scan myapp
[INFO] [05:13:57.140] Load module settings
[INFO] [05:13:57.187] Initializer FindbugsMavenInitializer
[INFO] [05:13:57.187] Initializer FindbugsMavenInitializer (done) | time=0ms
[INFO] [05:13:57.187] Base dir: C:\myapp
[INFO] [05:13:57.187] Working dir: C:\myapp\target\sonar
[INFO] [05:13:57.187] Source paths: pom.xml, src/main/java
[INFO] [05:13:57.187] Test paths: src/test/java

我目前正在使用 SonarQube 5.1、Java 7u80

注意:如果使用 Sonar Runner 完成分析,它会扫描所有文件。

4

2 回答 2

2

从 SonarQube 4.2 开始,可以对多语言项目进行分析。为此,sonar.language property必须删除 just 。相反,如果由于某种原因您想要执行单一语言分析,请确保sonar.language已指定。

默认情况下,sonar.sources 属性设置为 Maven sourceDirectory 属性的值(默认为src/main/java)加上pom.xml(并且也会src/main/webapp自动添加到 war 模块)。因此,对于多语言项目,通常必须将属性覆盖为:sonar.sources=src/main,pom.xml.

于 2015-06-17T11:39:19.657 回答
1

由于它是一个多模块项目,我必须在父模块的文件中包含属性sonar.sources和。sonar.testspom.xml

<properties>
    <sonar.sources>pom.xml,src/main,src/test</sonar.sources>
    <sonar.tests></sonar.tests>
</properties>

sonar.tests参数为空,因为它与 Maven 不兼容。

于 2015-06-17T13:49:48.723 回答