2013-03-27 6 views
0

Я разрабатываю проект на Eclipse Juno, используя GWT и GAE.NoClassDefFoundError в Google App Engine

В моем первоначальном проекте были все его пакеты и классы в одном проекте, и он отлично работал как в режиме разработки, так и при загрузке в Google App Engine в Интернете.

Тогда я создал другой проект (в том же рабочем пространстве), я переместил классы, которые были родовыми, чтобы их можно было использовать в других проектах. Я не создал файл Jar. Должен ли я? Мне жаль, что я не могу просто сохранить свои общие классы в другом проекте, не помещая их в файл jar.

Через некоторое время мне удалось создать правильные файлы XXX.gwt.xml в обоих проектах и ​​добавить новый проект на вкладку «Проекты» основных свойств проекта (Проект >> Свойства >> Проекты), чтобы сделать перемещенные классы, видимые для основного проекта. Компилятор GWT обнаружил эти перемещенные классы, перевел их в Javascript-код, и основной проект смог выполнить их на стороне клиента.

Моя проблема на стороне сервера. Независимо от того, что я пытаюсь, часть сервера не может найти перемещенные классы, и при попытке выполнить любой из них он приходит с ошибкой «NoClassDefFoundError» при запуске в режиме разработки (я не пытался загрузить в Google App Engine в Интернете все же). Если я прокомментирую все ссылки на эти классы на стороне сервера, ошибка не появляется, но, конечно, у меня нет их функциональности.

Гастон Ceron

+0

Вам не нужно создавать JAR, но вы должны каким-то образом загрузить этот код в AppEngine. Самый простой - это JAR, который вы копируете в WEB-INF/lib. – Thilo

+0

Спасибо, я подозревал, что мне понадобится файл jar. – gastonceron

ответ

0

Да, вам придется создать банку второго проекта, и поместить его в WEB-INF/Lib папки.

Если вы можете использовать maven или ant, вы можете настроить appengine для компиляции другого проекта в банку и использовать его в качестве зависимости для проекта движка приложения.

+1

Спасибо, я мало знаю о Java, и я пытался избежать создания Jar-файла. Теперь я знаю лучше. – gastonceron

Смежные вопросы