1
假设我有的甘特代码块:如何从Grails控制器中运行Gant目标?
target(echo:"test"){
ant.echo(message:"hi")
}
setDefaultTarget("echo")
这通常是通过命令行运行。
如何将块放置在Grails控制器中并从那里运行?
假设我有的甘特代码块:如何从Grails控制器中运行Gant目标?
target(echo:"test"){
ant.echo(message:"hi")
}
setDefaultTarget("echo")
这通常是通过命令行运行。
如何将块放置在Grails控制器中并从那里运行?
您可以使用AntBuilder此:
class FooController {
def index = {
def ant = new AntBuilder()
ant.echo(message:"hi")
}
}
您可以创建一个Groovy脚本说DynaScript_.groovy包含您的甘特码,并把这个脚本文件中的{} grailsHome /脚本文件夹中。
然后你就可以从你的控制器调用脚本文件是这样的:
class FooController {
def index = {
def process = "cmd /c grails dyna-script".execute()
def out = new StringBuilder()
process.waitForProcessOutput(out, new StringBuilder())
println "$out"
}
}
重要的是,你的脚本名称以下划线结束。
亲爱的伯特,谢谢你的好解决方案。这是否意味着我不能简单地将富Grails scipts复制到我的控制器中以供使用? – john 2010-09-21 17:18:48