我正在 Windows 和 Linux 操作系统上运行我的 gradle 脚本。当我在 Windows 操作系统上运行它时,它运行良好。我正在尝试执行 hg 命令来创建标签并将其推送到存储库。脚本运行良好问题是标签名称。我使用以下命令应用标签,该命令在 Windows 操作系统上运行良好。Gradle 脚本正在运行此命令。
commandLine "hg tag -r $hash \"Build $cbversion\"".split()
但是相同的命令在 Linux 操作系统上运行时会抛出错误,并且未应用带有 Build 1.2.3.4 名称的标签。我尝试了以下命令,但没有成功
commandLine "hg tag -r $hash Build $cbversion".split()
然后它创建名称为 Build only 的标签
有人可以告诉我如何克服这个问题吗?
最佳答案
这是exec
使用进程而不是shell。您不能在此处引用以使其正常工作。 commandLine
要么采用数组或可迭代作为参数。例如:
commandLine 'hg', 'tag', '-r', hash, "Build $cbversion"
关于java - 如何在 Linux 操作系统上运行 gradle 脚本时转义空格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47642284/