Как установить свойство agentlib для плагина mvn tomcat (jpda)

Связано с eclipse отлаживать удаленное веб-приложение = > Как отлаживать удаленное приложение в моем eclipse

Как я могу установить/архивировать это в плагине mvn tomcat? http://tomcat.apache.org/maven-plugin-2.0-SNAPSHOT/tomcat7-maven-plugin/

Единственное, что может помочь, это установить systemProperty, но это не работает для меня; /

Цель: позволить tomcat запускаться на консоли через maven, но разрешать удаленное отладки для разных IDE

(ДА, ребята, мы можем запустить tomcat в Eclipse WTP! Это не вопрос;)

Ответ 2

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

Плагин не предоставляет настройки параметров отладки по какой-то странной причине. Таким образом, ваш единственный вариант - вручную указать конфигурацию отладки для JVM, которая запускает этот процесс. В вашей среде это достигается тремя способами:

  • Использование переменной среды well-maven (как описано childno.de)
  • Непосредственно задавать параметры для maven (нет необходимой переменной env):

    mvn -Xdebug -Xnoagent -Djava.compiler = NONE -Xrunjdwp: transport = dt_socket, address = 8000, server = y, suspend = y tomcat7: run-war

  • С конфигурацией запуска eclipse. Это в основном то же самое, что и у 2), но вы определяете это в eclipse (это было бы хорошо, если бы вы вообще не хотели покидать IDE). Для этого вам нужно указать конфигурацию Конфигурация сборки Maven. Задайте цель tomcat7:run (или аналогичную), а затем перейдите на вкладку JRE. В разделе аргументы VM указывается конфигурация отладки: -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=y
Если вы выберете 3), точная цель для tomcat7 не имеет отношения к разрешению отладки. Выберите в соответствии с вами вариант использования (динамический веб-проект, война и т.д.). То же самое касается конфигурации плагина. Однако не забудьте указать, что вы используете плагин tomcat maven в разделе pluginManagement вашего проекта pom:
<pluginManagement>
   <plugins>
        <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.1</version>
    </plugin>
    </plugins>
</pluginManagement>

Ответ 3

ИЛИ... вы можете просто добавить следующий тег в свою конфигурацию плагинов

 <jpda>true</jpda>

Затем, когда вы выполните: mvn tomcat7: run, он запустит jpda на порту 8000.

Забавная вещь, хотя я ее протестировал, и она работает, я не могу найти какой-либо код в базе кода openource, чтобы объяснить, почему он работает, и я не нашел способа изменить его из стандартного порта 8000.

Apache, похоже, сбросил мяч, когда дело доходит до документации этого плагина.