2013-09-20 2 views
2

Я перехожу от Eclipse к IntelliJ Idea и испытываю некоторые проблемы с запуском моего веб-проекта Maven, как хотелось бы. В Eclipse я запускал его с помощью mvn tomcat: run, который отлично работал с отладкой JSP. В IntelliJ я создал конфигурацию запуска для использования этой команды, и она работает, но отладка JSP не работает.Запустить веб-проект maven с отладкой JSP на tomcat с помощью IntelliJ Idea

Я попытался найти информацию о том, как получить JSP-отладку для работы с IntelliJ, и единственная информация, которую я нашел, связана с настройкой сервера Tomcat в IntelliJ, а не с использованием кота Maven с mvn tomcat: run. Проблема в том, что я не могу понять, как это сделать без IntelliJ, используя собственный построитель вместо того, чтобы строить проект с Maven. Я могу добавить цели Maven, такие как «mvn compile», но когда я установил его для развертывания взорванной войны и добавил «build myproject: war exploded artifact» в очередь сборки, которая вызывает конструктор IntelliJ.

Строитель IntelliJ берет навсегда, чтобы построить мой проект. Я даже не позволил этому закончить. Справедливости ради, проект огромен, но Maven строит довольно быстро. Кроме того, все в моей компании используют Maven для его создания, поэтому мне также нужно использовать Maven.

Может ли кто-нибудь помочь мне получить JSP-отладку, используя mvn tomcat: run или на управляемом Intellij Tomcat с проектом, созданным Maven?

ответ

3

В IntelliJ вы можете легко отлаживать «удаленный» TOMCAT экземпляр (один работает в другой JVM, чем IntelliJ):

Run -> Edit Configuration -> "+" -> Tomcat Server -> Remote 

Это создаст новую конфигурацию. Посмотрите информацию на вкладке «Ввод в эксплуатацию/подключение» для параметров, добавляемых в JVM tomcat. Моей являются:

-Xdebug -Xrunjdwp:transport=dt_socket,address=57813,suspend=n,server=y 

Наконец, запустите tomcat, запустив требуемую команду maven. Затем запустите указанную выше конфигурацию запуска (нажмите кнопку отладки).

+0

Спасибо, что сработало. Было бы неплохо не запускать его из командной строки все время. Я попытался сделать это, создав конфигурацию запуска Maven, которая запускает tomcat7: запустите и поместите аргументы отладки, которые вы разместили в параметрах виртуальной машины (не знаете, где их еще можно разместить). Как только это было запущено, я попытался запустить конфигурацию удаленного сервера tomcat, но он сказал, что не смог подключиться к этому порту. Есть идеи? – Sarevok

+0

В конечном счете вам необходимо передать «-Xdebug» и связанные с ним параметры в JVM, на котором будет работать tomcat. В идеале плагин tomcat-maven должен документировать, как это сделать, поскольку он отвечает за запуск этой JVM, но я не вижу в нем упоминаний в документах. У этого ответа есть предложение, но, по крайней мере, два комментатора говорят, что они не сработали для них: http://stackoverflow.com/questions/11928689/increase-memory-of-tomcat7-maven-plugin Конечно, вы всегда можете отказаться от идея запускать tomcat из maven и просто начать его с IntelliJ (локальный tomcat), по крайней мере, при отладке. – Keith