Подтвердить что ты не робот

Можно ли отлаживать код клиента GWT на сервере REMOTE с помощью IntelliJ 9 Community Edition?

Я пытаюсь переместить наш проект Google Web Toolkit (GWT) из Eclipse в версию сообщества IntelliJ 9. До сих пор я смог успешно запускать и отлаживать код клиент/сервер с помощью плагина GWT Maven и встроенного контейнера Jetty.

Однако у меня возникла проблема с отладкой кода клиента, когда он уже запущен на удаленном компьютере (и, следовательно, нет необходимости в встроенном контейнере Jetty).

Кто-нибудь добился успеха в этом? Любая помощь будет оценена!

ОБНОВЛЕНИЕ: я, наконец, смог это сделать. Пожалуйста, см. Мой собственный ответ ниже...

4b9b3361

Ответ 1

Я, наконец, смог это сделать, используя класс GWT DevMode, как описано в документации.

Короче говоря -

  • Добавьте проект в версию сообщества IntelliJ 9
  • Добавить конфигурацию прогона
  • Используйте com.google.gwt.dev.DevMode как ваш основной класс (обязательно включите gwt-user и gwt-dev jars в путь к классам проекта. См. здесь)
  • Добавьте следующие параметры программы:

    -noserver -war "[полный путь к вашей взорванной войне]" -gen "[полный путь к сгенерированным файлам]" -logLevel INFO -port [удаленный порт сервера] -startupUrl "[URL удаленной страницы]" [com.company.YourEntryPoint]

Таким образом, бегун DevMode не будет создавать экземпляр встроенного контейнера и позволит отлаживать удаленный сервер JavaScript в исходной форме Java.

Обратите внимание, что для построений, которые не требуют отладки удаленного кода клиента, вы можете использовать интеграцию Maven или Ant, что намного проще. У меня нет опыта работы с созданным build.xml, созданным с помощью webAppCreator, но с Maven вы можете просто запустить gwt: run или gwt: отладить цели с помощью этого параметра: -DrunTarget =

Надеюсь, что это поможет!

Ответ 2

При запуске приложения GWT, развернутого на удаленном сервере, клиентская часть вашего приложения будет переведена в javascript, поэтому я не думаю, что вы сможете отладить это от IntelliJ. На стороне сервера вашего приложения все равно будет Java-код. Вы должны иметь возможность запустить этот удаленный сервер с параметрами отладки java (например, транспортным типом и портом для прослушивания). Из IntelliJ вы можете запустить удаленный отладочный сеанс, используя тот же транспортный тип и порт. Если вы посмотрите на удаленную отладку, вы сможете найти, как это сделать.