相关 eclipse debug remote web application => How do I debug a remote application in my eclipse
如何在mvn tomcat插件中设置/存档? http://tomcat.apache.org/maven-plugin-2.0-SNAPSHOT/tomcat7-maven-plugin/
唯一可能有用的是设置systemProperty,但这对我不起作用; /
目标:让tomcat通过maven在控制台上运行,但为不同的IDE启用远程调试
(是的,我们可以在Eclipse WTP中运行tomcat!这不是问题;)
答案 0 :(得分:27)
$ export MAVEN_OPTS=-agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=n
$ mvn tomcat7:run-war
^^就是这样,不酷(因为它不在POM中)但它有效
来源:http://aaronz-sakai.blogspot.de/2009/02/debugging-jetty-when-running-mvn.html
答案 1 :(得分:6)
这是一个有点老的线程,但为了完整起见,我可能会在这里添加一点。
该插件不会出于任何奇怪的原因提供调试选项配置。 因此,您唯一的选择是手动为运行该进程的JVM指定调试配置。 在您的环境中,有三种方法可以实现这一目标:
mvn -Xdebug -Xnoagent -Djava.compiler = NONE -Xrunjdwp:transport = dt_socket,address = 8000,server = y,suspend = y tomcat7:run-war
tomcat7:run
(或类似),然后导航至 JRE 标签。您可以在 VM参数区域指定调试配置:-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=y
pluginManagement
部分中指定您正在使用tomcat maven插件:
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.1</version>
</plugin>
</plugins>
</pluginManagement>
答案 2 :(得分:-1)
或者......您只需将以下标记添加到插件配置
即可 <jpda>true</jpda>
然后当你执行:mvn tomcat7:run时,它将在端口8000上启动jpda。
有趣的是,即使我已经测试了这个并且它有效,我在开源代码库中找不到任何代码来解释它为什么有效,也没有找到任何方法来改变默认端口8000。
在谈到这个插件的文档时,Apache似乎已经放弃了。