【问题标题】:Unable to save a domain class instance from Groovy Console in GGTS无法从 GGTS 中的 Groovy 控制台保存域类实例
【发布时间】:2013-08-13 04:42:59
【问题描述】:

我正在使用 Groovy/Grails Tool Suite 创建一个 Grails 项目。如果我选择 Run As >> Groovy Console,我可以从我的域类创建示例对象,但无法保存它们。

所以,

new things.Thing(height: 20, length: 30)

创建一个新事物,但是

new things.Thing(height: 20, length: 30).save()

抛出异常

No signature of method: thing.Thing.save() is applicable for argument types: () values: []

即使 respondsTo 声明 Things 响应 save()。

有人知道为什么会这样吗?

【问题讨论】:

    标签: grails


    【解决方案1】:

    那是 Groovy 控制台,而不是 Grails 控制台。它们使用相同的代码并且看起来相同,但 Grails 版本挂钩到应用程序,而 Groovy 控制台只能访问代码。要运行控制台,请转到 Grails 工具 |打开 Grails 命令提示符并在文本字段中输入 console

    这只是一个用于从命令行运行 grails console 的 GUI 包装器。

    【讨论】:

    • 我对这种方法也有一点问题。与 Grails Launch 相关的超时会在一段时间不活动后关闭 Grails 控制台,默认为 60 秒。我想永久保持控制台打开,但我有点担心 GGTS 的某些其他部分确实需要更严格地设置此超时,否则会有冻结 IDE 的风险。
    • 您使用的是运行方式吗?圣杯指挥部?这会创建一个启动,但如果有一个超时它就没什么用了。如果您使用命令提示符,则没有超时。另一种选择是从 shell 运行 grails console
    • 我使用的是 Navigate |打开 Grails 命令提示符,但今天超时似乎消失了。周五它关闭了控制台 3 次,但今天一切正常。
    猜你喜欢
    • 2012-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多