Tôi đang cố gắng kết nối trình gỡ lỗi tốt nhất của mình với cá thể Glassfish từ xa (bằng remote nghĩa là không chạy trên cùng một máy vật lý và không chỉ trong cùng một máy ảo).Không thể kết nối với Glassfish bằng cách sử dụng bất kỳ trình gỡ lỗi
cấu hình miền glassfish tôi có "debug" cờ kiểm tra và báo cáo server.log trong quá trình startup
-Xdebug
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9009
nào chỉ ra (để tâm trí của tôi), gỡ lỗi thực sự là kích hoạt.
Tuy nhiên, khi tôi cố gắng kết nối trình gỡ lỗi, nó không thành công. Phiên sau là ví dụ (được thực hiện với 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.
Điều gì có thể gây ra hành vi đó?
EDIT
Thông báo JDB này dòng lệnh đã được đưa ra như một example of Glassfish debug testing on the web, đây là lý do tại sao tôi đã sử dụng nó
Cũng cần chú ý tôi đang làm phiên JDB debug này tại địa phương (đó là để nói khi được kết nối với máy đó bằng PuTTy, do đó hãy gọi jdb trên máy Glassifh đang chạy).
Bạn có thể chạy 'ps -ef | grep java' như là một kiểm tra sanity nhanh chóng rằng glassfish đang bắt đầu với params jvm của bạn. Ngoài ra một netstat cho nhà nước của cảng đó? – nsfyn55
Khi bạn nói 'bằng cách chạy tôi có nghĩa là không chạy' bạn có nghĩa là điều này 'bởi REMOTE tôi có nghĩa là không chạy'? – vkraemer
@vkraemer Thật vậy. Tôi đã thay đổi câu hỏi cho phù hợp. – Riduidel