Могу ли я установить dev_appserver GAE для автоматической перезагрузки контекста при изменении файлов .class? - PullRequest
3 голосов
/ 10 марта 2011

Я использую Google AppEngine со встроенным веб-сервером.Моя разработка идет простым путем: я делаю изменения в моих исходных файлах .java или .jsp и компилирую, используя ant, и для просмотра изменений мне нужно перезапустить сервер разработки.

Мне интересно, можно ли как-нибудь избежать этого последнего шага перезапуска сервера разработки - каким-то образом обновить контекст кэшированных классов моего веб-сервера.Параметры, предоставляемые Google на этом сервере разработки, весьма ограничены, и мне интересно, есть ли лучший способ.

Я бы хотел не использовать что-то вроде JRebel, которое я мог бы купить, но для этого простого проекта я простоинтересно, смогу ли я снять бремя перезапуска своего веб-сервера ... в противном случае я буду жить с этим.

Ответы [ 2 ]

4 голосов
/ 12 марта 2011

Я понял, что вы можете просто коснуться appengine-web.xml для принудительной перезагрузки контекста сервера. Также загрузка страница под /_ah/reloadwebapp перезагрузит контекст сервера - даже если он дает вам 404, он все равно перезагрузит контекст.

0 голосов
/ 10 марта 2011

В режиме отладки JVM может выполнять горячую замену - я знаю, и Intellij IDEA делает это, я уверен, что другие отладчики в других IDE делают это тоже.

Запустите сервер приложений с флагом отладки (например, -Xdebug -Xrunjdwp:transport=dt_socket,address=127.0.0.1:8000), затем подключите отладчик к серверу приложений.

Затем внесите изменение в источник, который не является сигнатурой метода или изменением поля класса. Перекомпилируйте, и вуаля, отладчик оперативно поменял класс в отлаживаемом jvm!

Это действительно только работает хорошо. Но этого может быть достаточно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...