sonar maven 分析只选择 .java 文件

sonar maven analysis only picks .java file

我正在尝试对我的多语言项目进行 运行 sonar maven 分析,该项目包含多种语言,例如 *.java、*.groovy、*.js 等。我有在我的声纳中安装了所有语言插件并将我的 pom sonar.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,Java7u80

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

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

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

由于这是一个多模块项目,我必须在父模块的 pom.xml 文件中包含属性 sonar.sourcessonar.tests

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

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