gpt4 book ai didi

gradle - Gradle,SonarQube插件和带有非法字符的项目名称

转载 作者:行者123 更新时间:2023-12-03 04:34:31 27 4
gpt4 key购买 nike

我们有一个多项目gradle构建,它将项目组织到目录中。例:

root
+--Libraries
+-- Project1
+-- Project2
+--Tools
+-- Project3
+-- Project4

由于SonarRunner插件已弃用,因此我们尝试使用官方的 SonarQube plugin for gradle。使用的gradle版本是2.10。

由于我们的项目结构,项目名称存在问题:SonarQube插件收到的项目名称为“Libraries \ Project1”。 “\”是项目名称的非法字符。

以前,对于SonarRunner,此问题是通过覆盖ProjectKey属性来解决的:
// project specific sonar configuration
gradle.projectsEvaluated {
subprojects {
sonarRunner {
sonarProperties {
def projectKey = "$project.group:$project.name".replaceAll('/', '-')
property 'sonar.projectKey', projectKey
}
}
}
}

SonarQube尝试的等效项是
// project specific sonar configuration
gradle.projectsEvaluated {
subprojects {
sonarqube{
properties {
def projectKey = "$project.group:$project.name".replaceAll('/', '-')
property 'sonar.projectKey', projectKey
}
}
}
}

但是,这不适用于SonarQube。有没有人遇到过类似的问题?

谢谢你的帮助!

最佳答案

在Linux环境下,对我有用的是用':'替换'/',并覆盖moduleKey。将这部分添加到您的root build.gradle文件中:

子项目{

sonarqube {
String regex = "(.*)/(.*)"
String projectKey = project.name.replaceAll(regex, "\$1:\$2")
String sonarModuleKey = rootProject.group + ':' + rootProject.name + ':' + projectKey

properties {
property "sonar.moduleKey", sonarModuleKey
}
}

}

关于gradle - Gradle,SonarQube插件和带有非法字符的项目名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35286797/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com