Я хочу отладить webapp в eclipse. Я дошел до того, что tomcat и webapp запускаются внутри eclipse в режиме отладки, но тогда точки останова в коде webapp не имеют никакого эффекта.Запустите tomcat7: запустите плагин maven в eclipse и отлаживайте
Подробности
веб-приложение является Maven артефакт, и я использую плагин m2e в затмении, чтобы соединить между мавена и затмения.
Мне удалось запустить сервер tomcat из затмения. WebApp начинается в котом красиво, а также в режиме отладки, если я выбираю так:
- в затмении, щелкните правой кнопкой мыши проект
- Run As> Maven построить ... (НЕ «Maven построить»)
- открывается окно. В текстовом поле «Цели», введите «tomcat7: запуск»
- нажмите Применить
- выберите пункт Выполнить
сервер Tomcat запускается и работает его stdlog печатается в окно в затмении. Я также могу остановить его удобно и запустить его снова в режиме отладки. Пока что это то, чего я хочу и чего я ожидаю.
Проблема
я поставил точку останова в коде моего веб-приложение и перезапустить Tomcat в режиме отладки внутри затмения. Теперь точка останова неактивна: у нее нет такой небольшой отметки, которая имеет активные точки останова, и я знаю, что код выполнен, но он не останавливается на точке останова.
Я знаю, что могу настроить удаленную отладку в maven, а затем запустить tomcat7 в maven и подключиться к нему с помощью удаленной отладки eclipse. Но тогда мне нужно управлять стартом и останавливать две вещи отдельно, и я не увижу вывод журнала tomcat в исключениях затмения для включения в клик. Мне нужны оба этих преимущества. Если все работает по-другому, я тоже в порядке. –
Почему вы не используете экземпляр сервера Tomcat внутри Eclipse вместо того, чтобы полагаться на плагин Maven? – watery
@ watery Я мог бы и я, если мой другой способ не сработает. Основная причина в том, что плагин maven имеет одну конфигурацию, и если что-то там изменится, я автоматически изменю это изменение при запуске tomcat через плагин maven. Если у меня есть сервер tomcat, настроенный в eclipse, тогда изменение конфигурации из maven не будет иметь эффекта в моем затмении. Таким образом, если я это сделаю, я могу запустить tomcat по-другому по сравнению с тем, как мои участники команды запускают его, поэтому в какой-то момент мы можем столкнуться с различными наборами проблем, что приводит к трудностям в описании описаний каждой из них. –