如何从外部build.gradle.kts文件中获取git-rev列表-计数



我为GroovyGradle编写了这个函数(称之为functions.gradle(

static def gitVersionCode() {
return "git rev-list --count HEAD".execute().text.trim().toInteger()
}
ext {
gitVersionCode = this.&gitVersionCode
}

其中,我可以从外部build.gradle文件调用gitVersionCode()来获取修订计数。我正试图为kts重写这篇文章,但我在方面遇到了问题

a( 从另一个脚本调用它,然后

b( 执行bash命令并将其作为整数返回。我可以把它作为一个字符串,但不是一个整数

它尝试的内容看起来有点像(functions.gradle.kts(

val gitBuildNumber: String by lazy {
val stdout = ByteArrayOutputStream()
rootProject.exec {
commandLine("git", "rev-list", "--count", "HEAD")
standardOutput = stdout
}
stdout.toString().trim()
}

使用.toInt()将结果转换为int

val gitBuildNumber: Int by lazy {
val stdout = org.apache.commons.io.output.ByteArrayOutputStream()
rootProject.exec {
commandLine("git", "rev-list", "--count", "HEAD")
standardOutput = stdout
}
stdout.toString().trim().toInt()
}

最新更新