gpt4 book ai didi

version-control - 将 hg 修订版写入文件的 Gradle 任务

转载 作者:行者123 更新时间:2023-12-04 01:57:16 28 4
gpt4 key购买 nike

是否有一种简单的方法可以在 gradle 任务中将 mercurial 版本(或类似的外部命令)写入文件:

我还不熟悉 groovy/gradle,但我目前的努力是这样的:

task versionInfo(type:Exec){
commandLine 'hg id -i -b -t'
ext.versionfile = new File('bin/$baseName-buildinfo.properties')

doLast {
versionfile.text = 'build.revision=' + standardOutput.toString()
}
}

最佳答案

这个构建脚本有两个问题:

  • 命令行需要拆分; gradle 试图执行一个名为 hg id -i -b t 的二进制文件而不是 hg带参数 id , -i , -bt
  • 需要捕获标准输出;您可以将其设为 ByteOutputStream稍后阅读

  • 尝试这个:
    task versionInfo(type:Exec){
    commandLine 'hg id -i -b -t'.split()
    ext.versionfile = new File('bin/$baseName-buildinfo.properties')
    standardOutput = new ByteArrayOutputStream()

    doLast {
    versionfile.text = 'build.revision=' + standardOutput.toString()
    }
    }

    关于version-control - 将 hg 修订版写入文件的 Gradle 任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13920400/

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