2012-11-14 59 views
5

Poiché l'applicazione eclissi RCP fallisce quando viene eseguita all'esterno di eclipse, ma funziona correttamente quando si esegue eclipse, sto tentando di utilizzare eclipse per eseguire il debug in remoto dell'applicazione mentre è in esecuzione all'esterno dell'ambiente Eclipse.Come posso eseguire il debug remoto della mia applicazione rcp?

Sto usando Eclipse 3.6.1 a 32 bit su un computer Windows 7 a 64 bit. Sto usando l'aggiornamento di Java 1.6 a 32 bit 37. Uso la procedura guidata di esportazione del prodotto Eclipse per comprimere l'app e alla fine eclipse.exe. Ho creato una configurazione di debug remota e l'ho impostata per utilizzare la porta 8765 (numero casuale). Per scopi di debug, comincio l'applicazione dalla riga di comando con questa linea:
eclipse.exe -Xdebug -Xrunjdwp: trasporti = dt_socket, address = 127.0.0.1: 8765

A seconda che vi allego o ascoltare via il mio debugger Eclipse, aggiungerò l'opzione server = [y/n] a questa riga di comando ma sembra non fare alcuna differenza.

Per la configurazione Tipo di connessione ho provato sia Standard (Socket Listen) che Standard (Socket Attach). Quando provo Socket Listen, il mio debugger inizierà ad ascoltare - "Aspettando che vm si connetta alla porta 8765", ma quando avvierò la mia app attraverso la riga di comando, l'app si avvia correttamente ma il debugger non si collega mai.

Quando provo Socket Allega, io avviare l'applicazione prima utilizzando la riga di comando, poi, quando si tenta di collegare con Eclipse, ottengo il messaggio "Impossibile connettersi a distanza VM. Connessione rifiutata"

I' Ho provato tutte le varie combinazioni di indirizzo: localhost, 127.0.0.1 e il mio indirizzo IP locale. Ottengo lo stesso risultato ogni volta.

Grazie per qualsiasi aiuto!

risposta

9

Manca il parametro -vmargs. Prova "eclipse.exe -vmargs -Xdebug -Xrunjdwp: trasporti = dt_socket, address = 127.0.0.1: 8765"

ero alla ricerca per la stessa cosa e trovato la risposta in questo post utile http://blog.ankursharma.org/2010/05/remote-debugging-eclipse.html

+0

Wow finalmente funziona! Grazie mille per il vostro aiuto; Mi ero appena arreso con questa tecnica. – JasonK

+1

Avevo anche bisogno del server aggiuntivo e ho sospeso gli argomenti visti sul blog di Ankura: -vmargs -Xdebug -Xrunjdwp: transport = dt_socket, server = y, suspend = n, address = 1044 – Eric

1

Penso che un modo migliore per eseguire il debug dell'applicazione RCP sia avviarlo con "-console" "-consolelog". Questo ti dà la console osgi, dove puoi esaminare quali bundle hanno (non) avviato, i servizi che vengono esportati ecc. Digitare help per ottenere un elenco di comandi disponibili.

+0

Apprezzo il vostro rispondere. Ho modificato la mia riga di comando per includere le opzioni suggerite. Controllare lo stato dei pacchetti e dei servizi restituisce valori come "lazy", "active" e "resolved", e al momento non capisco cosa significhi, quindi sembra che abbia qualche ricerca davanti a me. Da quello che vedo, tutto sembra normale. – JasonK

+0

È possibile utilizzare il comando diag per verificare se le dipendenze dei bundle siano state risolte correttamente. In tal caso, provare ad avviare i pacchetti con il comando di avvio. – mbelow

Problemi correlati