您的位置:首页 > 编程语言 > Java开发

Java远程调试

2015-09-01 17:50 260 查看
有时在Windows上开发,打包的工程已经运行到Linux上,出现问题时一般有两种调试方式

1、在Windows上调试,但有时无法搭建出和Linux中相同的环境。

2、在Linux上安装个Eclipse,然后在Linux中调试,同样也不现实

这种情况最好的办法就是在自己的开发机上连接服务器进行调试,即使服务器上只有一个Jar包而没有Eclipse等开发工具也可以调试,非常的强大,以下是一个简单的示例

工程如下

com.demo.Client.java

package com.demo;
publicclass Client {

public staticvoid main(String[]args) {
System.out.println("One"); //断点所在行

System.out.println("Two");

System.out.println("Three");

System.out.println("Four");

System.out.println("Five");

}
}
将工程打包成demo.jar,直接运行效果如下
C:\Users\admin\Desktop>java-jar demo.jar
One
Two
Three
Four
Five
上面这个没什么好说的,下面开启远程调试

C:\Users\admin\Desktop>java -jar -Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=8000 demo.jar

Listening for transport dt_socket at address: 8000
在代码中打上断点,右键Client.java、Debug As、Debug Configurations、双击Remote
Java Application


点击“Debug”后会进入断点,点击“F6”后控制台输出如下

C:\Users\admin\Desktop>java -jar -Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=8080 demo.jar

Listening for transport dt_socket at address: 8080

One
输出了“One”,可见我们在本地通过“F6”对Jar包中的代码进行了一步调试,是不是很强大呢
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: