我问this关于如何调试服务器端应用程序的问题,我想我正在寻找Java remote Debugging。
我已经配置了服务器端启动脚本:
JAVA_OPTS="-Xmx2G -server -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=1044,server=y,suspend=n"
通过这个,我假设远程java应用程序应该在localhost上可用:1044(首先使用localhost尝试)
但是,接下来我该怎么办?我已经通过Run-->Debug Configurations
将调试选项配置为要调试的类。但它要求我单击Debug。但是我的班级没有main()方法。
说,我想在getValue()
中调试Methods.java
,现在从客户端调用getValue()
(通过tcp)。
那么,当调用该方法时,如何将java进程附加到eclipse远程调试器?我错过了关于远程调试的基本知识吗?
更新:(我可以在我的调试视图中看到这一点,这意味着,远程应用已连接并处于调试模式,现在如何在我想要的文件中放置一个断点)
答案 0 :(得分:3)
添加以下行:
-agentlib:jdwp=transport=dt_socket,address=1044,server=y,suspend=n
在调试模式下运行eclipse
对于eclipse,单击debug as icon>调试配置>添加一个新的远程Java应用程序>将项目更改为您需要的项目并将端口移至1044,然后单击“应用并调试”。
放置断点并访问远程应用程序