在Intellij中的GWT模块中导入Groovy类

时间:2009-04-20 23:24:44

标签: gwt groovy intellij-idea

基本上我甚至无法在常规GWT EntryPoint中导入Groovy类:

import com.google.gwt.core.client.EntryPoint; // OK
import groovy.lang.Binding; // NOT OK
import groovy.util.GroovyScriptEngine; // NOT OK

Intellij 8.0的检查员一直告诉我:

类'groovy.lang.Binding'在JRE仿真库中不存在,因此不能在客户端代码中使用

类'groovy.util.GroovyScriptEngine'在JRE仿真库中不存在,因此无法在客户端代码中使用

显然我在运行时也遇到了问题:

[错误]第11行:没有源代码可用于groovy.util.GroovyScriptEngine类型;你忘了继承一个必需的模块吗?

[错误]第12行:没有源代码可用于groovy.lang.Binding类型;你忘了继承一个必需的模块吗?

我已经多次检查过我的模块的依赖项,并且在那里正确定义了groovy-all-1.6.1.jar。我可能在其他地方遗漏了一些东西......

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

尝试使用Groovy没有任何意义,因为Gwt编译器只能理解Java语言语法,它是Java库的子集。编译器适用于源而非字节代码。一个原因包括隐藏javascript(JSNI)所需的魔术评论。编译器实际上正在扫描* .java而不是* .class文件的源路径。

更深入地了解doco fir。

答案 1 :(得分:1)

在某种意义上说,拥有一个时髦的语言gwt会很酷。

但是为什么要从一种动态语言转到另一种呢?我认为gwt的目的是获得静态类型和简单的java调试。