在我的 build.gradle 中,我有一个来自 'org.sonarqube'
插件的 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(预览分析)而不将结果推送到服务器
(我知道 IntelliJ 有一个 SonarLint 插件,可以使用 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'
}
}
最佳答案
您可以通过传递这些额外属性来启用预览模式和本地 HTML 报告:
-Dsonar.analysis.mode=preview -Dsonar.issuesReport.html.enable=true
但是,此功能不久前已被弃用,并且可能根本不适用于最新版本的 SonarQube 和 Gradle 扫描仪。
无论如何,旧文档都在这里:
https://docs.sonarqube.org/display/SONARQUBE51/Getting+Issues+Report+in+Preview+Mode
关于gradle - 使用 Gradle 在本地执行 SonarQube 分析,无需推送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47067526/