我以前没有构建过 Java Web 应用程序,但我已经完成了足够的测试,而且 Maven 正在构建我的 WAR 文件。它是一个多模块的Maven项目,依赖的模块都在WAR的WEB-INF/lib目录下有自己的JAR文件。
所以一切看起来都很好,但是如何调试呢?我知道如何(从命令行)在我机器上的 Tomcat 中运行 WAR。我还认为我知道如何从命令行设置和运行 Maven Jetty 插件。但是如何最好地调试...使用我喜欢 Eclipse 的所有断点和变量检查?
我应该创建某种启动配置,还是远程附加调试器? Eclipse 中有什么东西可以帮助...比如插件吗?
最佳答案
如果您使用 tomcat/jetty 插件运行 WAR,将调试选项传递给 Maven:
export MAVEN_OPTS="-Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000" mvn tomcat:run
如果您使用常规 Tomcat 运行 WAR,只需启用 JPDA(调试器)支持即可运行它:
$TOMCAT_HOME/bin/catalina.sh jpda start
Tomcat 6 JPDA 的默认端口是 8000。
现在将 Eclipse(调试 -> 远程 Java 应用程序)连接到端口 8000 并享受您的调试 session 。
关于java - 使用 Eclipse 和 Maven 调试打包为 WAR 的 Java Web 应用程序的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3723743/