我正在尝试对我的多语言项目运行 Sonar maven 分析,该项目包含许多语言,如 *.java、*.groovy、*.js 等。我已在 Sonar 中安装了所有语言插件并配置了我的 pom sonar.sources
参数为 src/main,src/test
但它仍然只拾取 java 文件。在控制台输出中。
我在控制台中收到以下几行,表明它仅扫描具有模式 src/main/java
和 src/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 进行分析,它将扫描所有文件。
最佳答案
自 SonarQube 4.2 起,可以对多语言项目运行分析。为此,只需删除 sonar.language 属性
即可。相反,如果由于某种原因您想要执行仅限单一语言的分析,请确保指定 sonar.language
。
默认情况下,sonar.sources 属性设置为 Maven sourceDirectory 属性的值(默认情况下为 src/main/java
)加上 pom.xml
(并且 src/main/webapp
也会自动添加到 war 模块中)。因此,对于多语言项目,该属性通常必须重写为:sonar.sources=src/main,pom.xml
。
关于maven - sonar maven分析仅选择.java文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30888789/