2017-04-26 93 views
0

我已經創建了一個腳本的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腳本中的正確方法是什麼?

+0

在Grails 3中也是如此。您是否嘗試過使用grails控制檯並查看是否存在錯誤。 – elixir

回答

0

我發現這個問題:

正如預期的要執行這種方式不能放在src /主/腳本documentation for run-script

Groovy腳本表示,因爲該目錄是保留給創建CLI腳本創建腳本。

此外,正確的命令是:

Grails的運行腳本 /path/my-script.groovy

要在一個Grails環境的上下文中執行Groovy腳本。