2015-04-24 4 views
0

У меня есть кошмар времени с отладкой приложений Play Framework, которые специально кодируют горячую замену. Я использую последнюю версию (с активатором 1.3.2), и я занимаюсь разработкой на Java, а не Scala.Play Framework 2 debug not working

Я запускаю приложение, используя «активатор -jvm-debug 9999 run» (также пытался «активатор -jvm-debug 9999 ~ run»), затем из Eclipse я прикрепляю отладчик к порту 9999, как обычно, и до сих пор так хорош, отладка работает нормально (хотя и немного медленная, но это нормально для Play).

Проблема начинается, как только я редактирую любой файл java на Eclipse и сохраняю Play, никогда не подбирает изменения, а горячая замена кода не будет работать, с этого момента кажется, что Play просто перестает ждать чего-то, как все мои вызовы REST тайм-аут. Если я остановлю отладчик из Eclipse, Play восстановится из этого состояния, и начнется горячая замена, и я снова могу сделать REST-вызовы. Если я снова присоединяю отладчик вещей, которые я обычно могу отлаживать снова, но это не всегда работает.

Это происходит только в режиме отладки, если я использую «запуск активатора», все работает нормально. Если я запускаю в режиме отладки, но никогда не присоединяю к нему отладчик, все работает нормально, проблемы, похоже, начинаются только при подключении отладчика.

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

ответ

0

Это трудно понять, что происходит с так мало информации, но мой обычный рабочий процесс отладки, без горячей выпуска свопинга, является:

$ activator -jvm-debug # 9999 is the default port, you can omit it 
[myapp] $ run 

После этого я просто подключить отладчик Eclipse, с никаких дополнительных проблем.

+1

Это в значительной степени то, что я делаю, я пробовал этот путь и ту же проблему. Я не уверен, какую дополнительную информацию я могу дать, ничего странного не происходит, отладка просто не работает. Есть ли способ сделать Play для вывода некоторых подробных журналов, которые могут помочь обнаружить, что может быть проблемой? – mfc

+0

Вы пытались очистить/скомпилировать/запустить код заранее? Во всяком случае, каждый раз, когда у меня есть игра, не выполняющая обмен кода, это связано с некоторой глубокой ошибкой в ​​моем коде/настройке (например, проблемами со сценарием среды выполнения) или когда я каким-то образом приостанавливаю обмен кодами обмена с точками останова или что-то в этом роде. – tavlima

+0

Да, конечно, не имеет значения. В моем коде или настройке нет какой-либо ошибки, как я сказал, если я никогда не присоединяю отладчик или не запускаю игру в обычном режиме, все работает так, как ожидалось. Когда сеанс отладки начался, все начинает действовать странно. – mfc