7

UIを持たないGWT用のユーティリティモジュールがあります(したがって、から継承するクラスはありませんcom.google.gwt.core.client.EntryPoint。このモジュールをGWT 1.7.1でコンパイルしようとすると、次のエラーが発生します。

[ERROR] Module has no entry points defined

このエラーを取り除くにはどうすればよいですか?本当にダミーのエントリポイントを定義する必要がありますか?Googleはどのようにして独自のユーティリティモジュールをコンパイルしたのでしょうか?

4

5 に答える 5

5

ユーティリティ Jar は GWT でコンパイルする必要はありません。

これを他の GWT アプリケーションのライブラリとして再利用したいだけなら、.class ファイルと .java ファイルを 1 つの jar に入れ、クライアント ソースがどこにあるかを示す .gwt.xml があることを確認するだけです。規則 (クライアントのクライアント クラス) に従う場合は、クライアント パッケージのタグを指定する必要があります。

次に、エントリ ポイントをコンパイルするプロジェクトで、この .gwt.xml を継承していることを確認してください。

于 2009-11-27T13:42:45.363 に答える
4

いいえ、EntryPoint は必要ありません。これは、モジュールを持たない私のモジュールの 1 つの例です。

<?xml version="1.0" encoding="UTF-8"?>
<module>
    <source path="grid" />
    <inherits name="com.google.gwt.user.User"/>
</module>

簡単な答えは、モジュール内のコードをコンパイルしないことです。GWT はそれらをソース コードとして必要とするだけです。メイン モジュール (エントリ ポイントを持つモジュール) をコンパイルすると、.gwt.xml ファイルで継承した他のモジュールからのソースを使用して、プロジェクト全体をコンパイルします。

于 2009-11-27T12:50:21.517 に答える
0

いくつかの一般的な UI 要素を構築および処理するユーティリティ モジュールと、一連の javascript/json の一般的なタスクがあります。

私たちが行ったこと (同様に totsp プラグインから codehaus プラグインに移行したこと) は、util モジュールにエントリ ポイントを含めることだったようです。それはちょうど空でした。(「意図的なノーオペレーション」というコメントが含まれています)。

次に、pom はそのことを依存関係として参照します。

于 2009-12-04T21:13:06.670 に答える
0

gwt-maven-pluginMaven2 プラグインを使用してコードをコンパイルしています。古いバージョンのmaven-googlewebtoolkit2-pluginプラグインからコードを移行しました。古いプラグインの場合、どのモジュールがエントリ ポイントであるかを次のように指定する必要がありました。

                <compileTargets>
                    <param>com.project.module.Module</param>
                </compileTargets>

新しいプラグインの場合、

                <module>com.project.module.Module</module>

プラグインはコンパイルするモジュールを見つけることができなかったため、"*.gwt.xml" を検索し、それらすべてを "UI モジュール" (エントリ ポイントが必要です) にコンパイルしました。

于 2009-11-27T13:07:49.127 に答える
0

Eclipse GWT プラグインを使用している場合は、コンパイルの直前にポップアップする moduleslist から EntryPoint のないモジュールを削除するだけです。

于 2010-05-20T07:11:09.503 に答える