簡體   English   中英

我可以從Eclipse / IDE調試器連接到遠程機器上的jsadebugd進程嗎?

[英]Can I connect to a jsadebugd process on a remote machine from Eclipse/IDE debugger?

我有一個在Linux機器上運行的java進程,但它無法在調試模式下啟動/重新啟動。 我閱讀了jsadebugd命令並啟動了守護程序,但我想從IDE(可能是Eclipse)調試器或者YourKit或jconsole連接到它。 我怎樣才能做到這一點? 遠程JVM是1.6+。

我假設您提到了Yourkit和其他工具,您真正想要做的是查看應用程序中的對象狀態。 有幾個選項,雖然我認為它不會讓你能夠設置像Eclipse或其他調試器那樣的斷點(雖然我會聽到什么限制你在調試模式下啟動進程 - 技術?過程?)

  1. 你試過連接: VisualVM 我不相信您需要在調試模式下啟動,它將使您能夠導航對象圖並檢查對象。 您甚至可以使用它來獲取堆轉儲並使用OQL查詢通過它們進行一些臨時分析。

  2. 如果您在JDK6 +上運行 - 您是否嘗試使用btrace進行檢測? 來自sailfin團隊的一些注釋聽起來很有希望,就像Solaris中的DTrace一樣,這似乎在各種情況下都很有用。

我不確定我是否正確理解了您的限制,但您可以啟用JVM並啟用調試服務器(提供JDWP)。 請參閱http://java.sun.com/j2se/1.4.2/docs/guide/jpda/conninv.html中的 “Sun VM調用選項”示例

然后,您可以將Eclipse調試器連接到正在運行的JVM。 請參閱http://www.ibm.com/developerworks/library/os-ecbug/中的 “遠程調試”部分

我不確定這是否暴露在Eclipse中,但是這里是如何用jdb做的:

http://java.sun.com/javase/6/webnotes/trouble/TSG-VM/html/tooldescr.html#gbmog

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM