【问题标题】:Execute git bash from gradle task从 gradle 任务执行 git bash
【发布时间】:2019-08-22 17:10:52
【问题描述】:

我有一个 bash 脚本需要作为任务的一部分执行。这个脚本在 git bash 中运行良好,但我无法让 gradle 运行 git bash 并执行脚本。

我尝试过这样的事情:

task example(type:Exec) {
    workingDir '.'
    executable 'C:\\Program Files\\Git\\bin\\bash.exe'
    args './path/to/script.bash'
}

我什至尝试了一些更简单的方法,比如pwd 或简单的echo

有什么办法让它工作吗?

【问题讨论】:

    标签: gradle git-bash


    【解决方案1】:

    你看过这里吗? https://docs.gradle.org/current/dsl/org.gradle.api.tasks.Exec.html
    我想你以错误的方式指定参数。

    对于 Mac,您可以轻松完成:

    task example(type:Exec) {
        workingDir '.'
        commandLine './echo_example.sh'
    }
    

    对于windows,只需根据上面的文档在命令行中指定命令。

    【讨论】:

      【解决方案2】:

      我建议您先在命令行中正确设置,然后在 Gradle 中尝试。在 DOS 提示符下(不是 git bash)执行以下操作吗?

      "C:\Program Files\Git\bin\bash.exe" ./path/to/script.bash
      

      如果失败了,显然 Gradle 也会失败

      【讨论】:

      • 我已经尝试从 windows cmd 运行它并且它工作正常,它似乎在一个全新的项目上也能正常工作,我猜我的真实项目的配置有问题会破坏它。感谢您提供帮助。
      【解决方案3】:

      我让它像这样工作。无论如何它都会启动 git-bash shell!

      exec {
           commandLine '"C:\\Program Files\\Git\\git-bash.exe"'
           args  '-i --cd=." ./encryptkey.sh'
           standardOutput = encryptedKeyStdOut
           standardInput = keyStdIn
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-06-10
        • 2018-10-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多