2

ClientBundle は、私のメイン プロジェクトで正常に動作します。com.example.project.client.Bundle

私のライブラリの別の ClientBundle は、問題なく jar にコンパイルされます。com.example.library.client.Bundle

ライブラリに依存しているプロジェクトをコンパイルすると、次のように失敗します。

[ERROR] Errors in 'jar:file:/C:/work/library.jar!/com/example/library/client/Bundle.java'
[ERROR] Line 10:  Failed to resolve 'com.example.library.client.Bundle' via deferred binding

ライブラリの jar を確認しましたが、画像ファイルは/com/example/library/client/ライブラリのソースにあるとおりです。何かトリックはありますか?@ClientBundle.Source("com/example/library/client/icon.gif")との両方で画像を参照しようとしましたが@ClientBundle.Source("icon.gif")、どちらもライブラリがファイルをコンパイルできるようにしますが、依存プロジェクトをコンパイルすると失敗します。

4

1 に答える 1

1

それは私のせいだったようです。私はicon.gifを参照していましたが、実際にはファイルシステムにicon.pngがありました。単純なタイプミス。

私の大きな間違いは、コンパイル手順を混乱させたことです。GWT ライブラリがあり、それを jar にコンパイルする場合、GWT コンパイルを行っているわけではありません。したがって、実際には ClientBundle アノテーションを検証していません。その検証は、依存するプロジェクトが完全な GWT コンパイルを行うまで行われません (そして、それが私にとって失敗していた場所です)。

于 2010-08-23T21:37:20.793 に答える