远程调试Jetty(没有mvn,没有插件)

raf*_*ira 31 eclipse debugging remote-debugging jetty

过去的场景
- 使用Tomcat并以调试模式启动并使用Eclipse进行远程调试.
- 在此调试/远程端口中定义端口并与eclipse连接.
- 用于调试其他主机/服务器中的服务器

今天的场景
现在,我正在使用 Jetty而且我也尝试过这样做,但是没有成功,有人可以帮助我吗?
我没有使用Maven,也不想从Eclipse中启动Jetty.

环境:
Windows XP
Java V. 5
Jetty V. 6.1.15

链接:
http:// docs.codehaus.org/display/JETTY/Debugging
这对我没有帮助!
HTTP:// docs.codehaus.org/display/JETTY/Debugging+Jetty+with+Eclipse
HTTP:// neelzone.wordpress.com/2007/06/18/jetty-and-eclipse-integration
这些是启动内部的Eclipse

Dav*_*itz 35

这是我们在开发时添加到JBoss命令行的内容:

-Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n
Run Code Online (Sandbox Code Playgroud)

然后我们启动eclipse远程调试并连接到这个端口.


更新:

要从jar(独立)运行,请执行以下操作

java -Xdebug -Xrunjdwp:transport=dt_socket,address=8585,server=y,suspend=n -jar start.jar 
Run Code Online (Sandbox Code Playgroud)

  • 只是一个小小的挑剔:该语法适用于1.5之前的JVM,较新的语法使用-agentlib:jdwp选项. (2认同)
  • 大卫,谢谢你的回答,对我有用.我正在使用fallow命令启动我的Jetty:java -Xdebug -Xrunjdwp:transport = dt_socket,address = 8585,server = y,suspend = n -jar start.jar谢谢! (2认同)

and*_*dri 18

对于远程调试,您应该使用JPDA.有一种关于它的可用tutorialish文章在这里.

简而言之,使用参数启动JVM:

-agentlib:jdwp=transport=dt_socket,server=y,address=8000,suspend=n

并且您可以通过标准Eclipse调试器连接到在端口8000上侦听的底层JVM.

  • 如果您正在调试服务器启动操作,请记住设置suspend = y (3认同)

Mac*_*eft 15

如果你将使用mvn jetty:运行一天,你必须

export MAVEN_OPTS="-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=4000,server=y,suspend=n"
Run Code Online (Sandbox Code Playgroud)

附加-Xdebug ...不起作用