在编译好的class文件中不好debug断点调试,在liunx下部署的更是不好调试了,解决的办法是可以用远程调试。在eclipse的debug里有remote java application 这个工具,可以使用它来设置远程调试。
确保本地代码和远程服务器代码一致,要不调试过程中,行号对不上。。。。。
set JAVA_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,address=8989,server=y,suspend=n %JAVA_OPTS%
-XDebug 启用调试。
-Xnoagent 禁用默认sun.tools.debug调试器。
-Djava.compiler=NONE 禁止 JIT 编译器的加载。
-Xrunjdwp 加载JDWP的JPDA参考执行实例。
transport 用于在调试程序和 VM 使用的进程之间通讯。
dt_socket 套接字传输。
dt_shmem 共享内存传输,仅限于 Windows。
server=y/n VM 是否需要作为调试服务器执行。
address=4000 调试服务器的端口号,客户端用来连接服务器的端口号。
suspend=y/n 是否在调试客户端建立连接之后启动 VM 。