在Grails3脚本中注入服务

时间:2017-04-26 08:25:22

标签: grails

我在Grails版本3.2.8中创建了一个脚本:

create-script my-script

在Grails 2中,我可以使用 ctx 变量注入服务:

def myService = ctx.myService
myService.myMethod() //works

我尝试在Grails 3脚本中做同样的事情。但是会抛出错误:

grails my-script
error: No such property: ctx for class: my-script

将服务注入Grails 3脚本的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

我发现了问题:

documentation for run-script

中所述

打算以这种方式执行的Groovy脚本不能位于src / main / scripts中,因为该目录是为create-script创建的CLI脚本保留的。

此外,正确的命令是:

grails 运行脚本 /path/my-script.groovy

在Grails环境的上下文中执行Groovy脚本。