2009-04-20 128 views
0

基本上,我甚至不能在常規GWT入口點導入Groovy類:的IntelliJ中導入Groovy類一個GWT模塊中

 
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

試圖使用Groovy是沒有意義的,因爲Gwt編譯器只理解Java語言的語法,它是Java庫的子集。編譯器在源代碼而不是字節代碼上工作。其中一個原因包括存儲javascript(JSNI)所需的魔法註釋。編譯器實際上是掃描* .java而非* .class文件的源路徑。

閱讀深入瞭解多克冷杉。

+0

謝謝,我不知道。我希望GWT將在未來支持Groovy代碼。乾杯。 – 2009-04-21 08:09:15

1

從某種意義上講,使用groovy language gwt會很酷。

但是爲什麼要從一種動態語言到另一種?我認爲gwt的意義在於獲得靜態類型和易於調試的java。