使用 gradle 在 sonarqube 中使用 java 和 java 脚本进行项目
Project with both java and javascript in sonarqube using gradle
我们有一个使用 Java 的非常标准的 Web 项目,它在标准 src/main/webapp
文件夹中还包含一些 java 脚本代码。我们使用 Gradle 2.14 作为构建工具。
我们刚刚在新服务器上安装了全新的 Sonarqube 6.0.1,检查了 Java 和 Javascript 插件是否都安装了,并修改了 build.gradle 文件根据 Sonarqube documentation 上的建议:
plugins {
id 'org.sonarqube' version '2.0.1'
}
sonarqube {
properties {
property 'sonar.projectName', 'Our-Project'
property 'sonar.projectKey', 'com.ourcompany:our-project'
}
}
这没有按预期工作:java 代码分析正确,我们可以在声纳上浏览结果,但 java 脚本代码未分析。
我们做错了什么?谢谢。
您确定 sonar.sources 在分析中包含了 js 文件吗?您可以添加模块的 gradle 配置吗?上面的文件看起来像应用程序级别 gradle 文件。您的应用程序应该至少有一个模块,该模块也有一个 gradle 文件。
Android Studio Project Structure
您需要将源代码添加到模块的 gradle 文件中。这是一个例子:
project(":app") {
sonarqube {
properties {
property "sonar.analysis.mode", "publish"
property "sonar.sources", "src/main/java"
property "sonar.java.binaries",
"build/intermediates/classes/debug"
property "sonar.junit.reportsPath",
"build/test-results/developDebug"
property "sonar.android.lint.report",
"build/outputs/lint-results-developDebug.xml"
property "sonar.test", "src/test/java"
}
}
}
我已经通过在 sonarqube
块中添加此 属性 来解决我们的问题:
property 'sonar.sources', 'src/main'
我们有一个使用 Java 的非常标准的 Web 项目,它在标准 src/main/webapp
文件夹中还包含一些 java 脚本代码。我们使用 Gradle 2.14 作为构建工具。
我们刚刚在新服务器上安装了全新的 Sonarqube 6.0.1,检查了 Java 和 Javascript 插件是否都安装了,并修改了 build.gradle 文件根据 Sonarqube documentation 上的建议:
plugins {
id 'org.sonarqube' version '2.0.1'
}
sonarqube {
properties {
property 'sonar.projectName', 'Our-Project'
property 'sonar.projectKey', 'com.ourcompany:our-project'
}
}
这没有按预期工作:java 代码分析正确,我们可以在声纳上浏览结果,但 java 脚本代码未分析。
我们做错了什么?谢谢。
您确定 sonar.sources 在分析中包含了 js 文件吗?您可以添加模块的 gradle 配置吗?上面的文件看起来像应用程序级别 gradle 文件。您的应用程序应该至少有一个模块,该模块也有一个 gradle 文件。
Android Studio Project Structure
您需要将源代码添加到模块的 gradle 文件中。这是一个例子:
project(":app") {
sonarqube {
properties {
property "sonar.analysis.mode", "publish"
property "sonar.sources", "src/main/java"
property "sonar.java.binaries",
"build/intermediates/classes/debug"
property "sonar.junit.reportsPath",
"build/test-results/developDebug"
property "sonar.android.lint.report",
"build/outputs/lint-results-developDebug.xml"
property "sonar.test", "src/test/java"
}
}
}
我已经通过在 sonarqube
块中添加此 属性 来解决我们的问题:
property 'sonar.sources', 'src/main'