web-dev-qa-db-ja.com

GWTコンパイラーはgwt.xmlを見つけることができません

GWTプロジェクトのパッケージ構造を変更して名前を変更しました。プロジェクトをWebアプリケーションとして実行しようとすると、モジュールが見つからず、次のメッセージが表示されます。

[エラー]クラスパスで「de/xx/focus/My_Projekt.gwt.xml」が見つかりません。タイプミスの可能性がありますか、ソースのクラスパスエントリを含めるのを忘れた可能性がありますか?
[エラー] doStartupメソッドでシェルが失敗しました

モジュールをロードするためにどのクラスが使用され、新しいパスをどこで更新しますか?

30
ph09

プロジェクトを再構築した後、何が間違っていたかを把握しようとして、gwt.xmlファイルをじっと見つめました。クライアント自体ではなく、クライアントのサブパッケージにあることが判明しました。パッケージとサブパッケージの長いリストの一番下にもあります。そのため、Eclipseのツリービューでは、適切な場所にあるように見えました。最後に、私はそれが深すぎる1レベルであることに気付きました。フェイスパームタイム。また、実行構成も調べます。 Eclipseを使用していて、「実行」、「Web構成」の順に実行する場合、今回は「実行」を実行し、サブメニューの下部にある「構成の実行」を選択します。タブを1つずつ移動しますが、特に「引数」タブを調べて、更新する必要があるかどうかを確認してください。 [プロジェクト]-> [プロパティ]-> [実行/デバッグ設定]の設定ビューに移動することもできます。

41
Steve J

また、[実行構成...]> [GWT]タブで、アプリの唯一のGWTモジュールを削除してから追加し直す必要がありました。これを行った後にのみ、アプリを再度実行できました。

15
Lucas A.

私も同じエラーがありました。プログラムの引数([Run As] ----> [Run Configurations ... ---> Arguments])を見ると、com.google.gwt.sampleがプロジェクト名に追加されていることがわかりました。

私はこれを削除し、今はうまく動作します。私のプロジェクトの名前はSampleProjectであり、パッケージにありますsamples

引数は次のようになります-

-remoteUI "$ {gwt_remote_ui_server_port}:$ {unique_id}" -startupUrl SampleProject.html -logLevel INFO -codeServerPort 9997 -port 8888 -war D:\ Eclipse\myprojects\SampleProject\war samples.SampleProject

奇妙なことに、この問題は初めて発生しました。初めて修正した後、その後の新しいプロジェクトは問題なく機能しました。

14
Sathya

最も簡単な方法は、その特定の名前で実行中のすべてのプロジェクトを停止し、その特定のプロジェクトの古い実行構成を削除することだと思います。

その後、プロジェクトを再度実行すると、うまくいきます。

問題の原因はプロジェクトの古い実行構成にあると思います。私の場合、サンプルコードを削除し、後で同じ名前で再生成しましたが、ようやく同じパッケージ名ではないことに気付きました。 Eclipseは、名前の一致のため、新しいプロジェクトに古い実行構成を使用しました。

3
qben

Intellijを使用する場合。リソースdirはこのme.wener.test.somehowのように見えます。おそらく、これはその名前を持つ唯一のディレクトリです。 me/wener/test/somehowではありませんが、同じように見えます〜クソ〜

1
wener

私はこの同じエラーをデバッグしていました。MacOS Xでは正常に動作するが、LinuxベースのCIビルドサーバーでは失敗するAntビルドのみでした。

解決策は簡単でした。ファイルの名前はModuleName.gwt.xmlでしたが、モジュールの名前はmodulenameでした。ビルドはmodulename.gwt.xmlを検索し、Macではデフォルトでファイルシステムの大文字と小文字が区別されないため、問題はありませんでした。 Linuxでは、ファイルが見つからず、このエラーが発生します。解決するには、ファイルの名前をmodulename.gwt.xmlに変更します。

0
jefeveizen

また、JRebelを使用しているかどうかを確認して、実行構成をキャッシュします:プロジェクトを右クリック>> JRebel >> remove natureadd再び自然と実行

0
Youans