使用Gradle在本地执行SonarQube分析而不推送

时间:2017-11-02 04:17:42

标签: gradle sonarqube

在我的 build.gradle 中,我有一个来自sonarqube插件的'org.sonarqube'任务。每当我运行gradle sonarqube时,我都会收到以下错误:

You're only authorized to execute a local (preview) SonarQube analysis without pushing the results to the SonarQube server. Please contact your SonarQube administrator.

我的组织中没有SonarQube服务器的管理员权限,请告诉我如何在本地运行SonarQube analysys(预览分析)而不将结果推送到服务器

(我知道有一个 SonarLint 插件可以让IntelliJ用IDE分析代码,但是安装它的过程涉及漫长的审批过程:)所以我将不得不这样做它)

更新添加我的sonarqube任务配置

sonarqube {
    def shortBranchName = versionDetails().branchName

    properties {
        property "sonar.host.url", 'http://dummy.net/'
        property "sonar.forceAnalysis", "true"
        property 'sonar.projectName', "[" + shortBranchName + "] " + rootProject.name
        property 'sonar.projectKey', "${sonarQubeProjectBaseKey}"
        property 'sonar.branch', shortBranchName
        property 'sonar.projectDescription', "[" + shortBranchName + "] " + rootProject.name
        property 'sonar.sourceEncoding', 'UTF-8'
    }
}

1 个答案:

答案 0 :(得分:1)

您可以通过传递以下额外属性来启用预览模式和本地HTML报告:

-Dsonar.analysis.mode=preview -Dsonar.issuesReport.html.enable=true

但是,此功能在不久前已被弃用,并且可能无法用于最新版本的SonarQube和Gradle扫描仪。

旧的文档在这里,无论如何:

https://docs.sonarqube.org/display/SONARQUBE51/Getting+Issues+Report+in+Preview+Mode