Rid*_*del 5 java debugging glassfish
我正在尝试将我最好的调试器连接到远程Glassfish实例(通过远程我的意思是不在同一台物理机器上运行,而不仅仅是在同一个VM中).
我的glassfish域配置已选中"debug"标志,并在启动期间报告server.log
-Xdebug
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9009
Run Code Online (Sandbox Code Playgroud)
这表明(在我看来),确实启用了调试.
但是,当我尝试连接调试器时,它会失败.以下会话是一个示例(使用PuTTy完成):
$ jdb -connect com.sun.jdi.SocketAttach:port=9009
java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:385)
at java.net.Socket.connect(Socket.java:529)
at com.sun.tools.jdi.SocketTransportService.attach(SocketTransportService.java:204)
at com.sun.tools.jdi.GenericAttachingConnector.attach(GenericAttachingConnector.java:98)
at com.sun.tools.jdi.SocketAttachingConnector.attach(SocketAttachingConnector.java:72)
at com.sun.tools.example.debug.tty.VMConnection.attachTarget(VMConnection.java:358)
at com.sun.tools.example.debug.tty.VMConnection.open(VMConnection.java:168)
at com.sun.tools.example.debug.tty.Env.init(Env.java:64)
at com.sun.tools.example.debug.tty.TTY.main(TTY.java:1010)
Fatal error:
Unable to attach to target VM.
Run Code Online (Sandbox Code Playgroud)
什么可能导致这种行为?
编辑
请注意,这个jdb命令行已经作为在Web上进行Glassfish调试测试的示例,这就是我使用它的原因
还要注意我在本地做这个jdb调试会话(也就是说当使用PuTTy连接到那台机器时,所以在运行的Glassifh机器上调用jdb).