0

基本的に、通常のGWTEntryPointにGroovyクラスをインポートすることさえできません。

インポートcom.google.gwt.core.client.EntryPoint; // わかった
import groovy.lang.Binding; // 良くないですよ
import groovy.util.GroovyScriptEngine; // 良くないですよ

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が正しく定義されています。私はおそらく他の場所で何かが欠けています...

何か案が?

4

2 に答える 2

2

GwtコンパイラはJavaライブラリのサブセットに沿ったJava言語構文しか理解しないため、Groovyを使用しようとしても意味がありません。コンパイラはバイトコードではなくソースで動作します。1つの理由には、javascript(JSNI)を隠しておくために必要な魔法のコメントが含まれます。コンパイラは実際には、ソースパスをスキャンして*.classファイルではなく*.javaを探しています。

ドコモミをもっと深く理解して読んでください。

于 2009-04-20T23:52:20.400 に答える
1

ある意味で、Groovy言語のgwtを使用するのはかなりクールです。

しかし、なぜある動的言語から別の動的言語に移行するのでしょうか。私が考えたgwtのポイントは、静的型付けとJavaの簡単なデバッグを取得することでした。

于 2009-07-15T21:36:52.913 に答える