1

当我尝试从 Eclipse/STS 运行以下代码时,出现以下异常:

Caught: groovy.lang.MissingMethodException: No signature of method: 
    groovy.json.JsonBuilder.message() is applicable for argument types:
    (ie.makalu.scripts.TestJsonBuilder$_run_closure1) values: 
    [ie.makalu.scripts.TestJsonBuilder$_run_closure1@d05c13]

但是当我从外壳运行它时,它工作正常。谁能建议为什么会这样?

我已经使用 STS 版本 2.9.2 在 Groovy 1.8.6 和 Groovy 2.0 中尝试过这个

package ie.makalu.scripts

import groovy.json.JsonBuilder


def json = new JsonBuilder()

json.message {
header {
    from('mrhaki')  // parenthesis are optional
    to 'Groovy Users', 'Java Users'
}
body "Check out Groovy's gr8 JSON support."
} 

println json.toString() 
4

1 回答 1

0

我建议不要使用 Eclipse STS——在我看来,太多人经常遇到问题。相反,我会安装标准的 Eclipse 或用于 Java 开发的 Eclipse(来自 eclipse 社区的任何东西,但不是专门的 STS 东西)并在顶部安装 Groovy(如果你需要 Grails)插件。它工作得更好,您可以自由安装任何在 STS 版本下可能无法运行的附加插件。

另外我建议尝试 IntelliJ,它与 Groovy(和 Grails)有很好的集成。

于 2014-03-20T02:11:05.153 回答