Ponieważ moja aplikacja zaćmienia RCP kończy się niepowodzeniem po uruchomieniu poza zaćmieniem, ale działa poprawnie podczas działania w środowisku zaćmienia, próbuję użyć zaćmienia, aby zdalnie debugować moją aplikację, ponieważ działa ona poza środowiskiem zaćmienia.Jak zdalnie debugować aplikację rcp?
Używam 32-bitowego Eclipse 3.6.1 na 64-bitowym komputerze z systemem Windows 7. Używam 32-bitowej aktualizacji Java 1.6 37. Korzystam z kreatora eksportu produktu Eclipse, aby spakować aplikację, a ja otrzymuję plik eclipse.exe. Stworzyłem konfigurację zdalnego debugowania i ustawiłem ją na port 8765 (liczba losowa). Dla celów debugowania, ja uruchomić aplikację z poziomu wiersza poleceń za pomocą tej linii:
eclipse.exe -Xdebug -Xrunjdwp: Transport = dt_socket, address = 127.0.0.1: 8765
W zależności od tego, czy ja lub słuchania poprzez dołączenie mój debugger Eclipse, dodam opcję server = [y/n] do tego wiersza poleceń, ale wydaje się, że nie robi to żadnej różnicy.
Dla konfiguracji Typ połączenia Próbowałem zarówno Standard (Socket Listen), jak i Standard (Socket Attach). Kiedy spróbuję Socket Listen, mój debugger zacznie słuchać - "Czekam na vm, aby połączyć się z portem 8765", ale kiedy uruchomię swoją aplikację za pomocą wiersza poleceń, aplikacja zacznie działać poprawnie, ale debugger nigdy się nie załącza.
Kiedy próbuję Socket Attach, ja uruchomić aplikację pierwszym użyciu wiersza poleceń, a następnie, gdy próbuję dołączyć przy użyciu Eclipse, pojawia się komunikat "Nie można połączyć się ze zdalnym VM. Connection refused"
I ve wypróbowane wszystkie różne kombinacje adresu: localhost, 127.0.0.1 i mój lokalny adres IP. Za każdym razem otrzymuję taki sam wynik.
Dzięki za pomoc!
Wow, wreszcie działa! Bardzo dziękuję za Twoją pomoc; Właśnie rezygnowałem z tej techniki. – JasonK
Potrzebowałem również dodatkowego serwera i zawiesiłem args widoczny na blogu Ankury: -vmargs -Xdebug -Xrunjdwp: transport = dt_socket, server = y, suspend = n, address = 1044 – Eric