转自 http://blog.csdn.net/hongchangfirst/article/details/44191925java
Java远程调试的原理是两个JVM之间经过debug协议进行通讯,而后以达到远程调试的目的。二者之间能够经过socket进行通讯。linux
被debug的机器须要开启debug模式,debug使用的客户端能够是eclipse,总之我使用eclipse已经成功了。spring
因为咱们常常将程序部署到linux机器上,因此一般使用的是war、tar包或者直接使用可运行的jar包,因为近来spring-boot的盛行,直接使用可执行的jar包成为了最流行的部署方式:服务器
jdk1.7以后使用命令:eclipse
java -agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=n -jar you-runnable-jar.jarsocket
当出现如下提示的时候表示服务端已经使用deubg模式启动:spring-boot
eclipse毕竟仍是咱们最熟悉的IDE,因此使用它做为dubug的客户端。测试
使用客户端发起一个请求,能够直接eclipse会直接进入debug模式。spa