3

Grails 应用程序版本:2.0.4。

我在脚本文件夹中有一个名为MyScript.groovy的 Grails 自定义脚本,非常像这样:

includeTargets << grailsScript("_GrailsInit")

target(main: "Run my custom bash script") {
    def process = "shell-scripts/my-script.sh -d param".execute()
    process.consumeProcessOutput(System.out, System.out)
    process.waitFor()
}

setDefaultTarget(main)

我能够使它工作,调用:

grails my-script

现在,我想在构建过程中执行这个脚本,所以我在我的_Events.groovy文件中添加了以下内容:

eventCreateWarStart = { warName, stagingDir ->
    // other stuff 

    ant.exec(executable: "grails", dir: "${basedir}") {
        arg(value: "my-script")
    }
}

但是..如果我从 Intellij 运行编译,脚本就会被中断;如果我从命令行运行编译,脚本会挂起一段时间,既没有输出也没有错误,然后停止。我究竟做错了什么?

有没有更好的方法来实现这一目标?

4

0 回答 0