Gwt ClientBundle не может найти изображения - PullRequest
2 голосов
/ 23 августа 2010

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"), которые позволяют библиотеке компилировать файл, но не удается при компиляции зависимого проекта.

1 Ответ

1 голос
/ 24 августа 2010

Похоже, это была моя вина.Я ссылался на icon.gif, но на самом деле имел icon.png в файловой системе.Простая опечатка.

Моя большая ошибка путала этапы компиляции.Если у вас есть библиотека GWT и вы скомпилировали ее в jar, вы не выполняете компиляцию GWT.Таким образом, вы на самом деле не проверяете какие-либо аннотации ClientBundle.Эта проверка не произойдет, пока зависимый проект не выполнит полную GWT-компиляцию (и это там, где она провалилась)

...