2014-01-28 20 views
1

我有jamvm版本1.5.4(java版1.5.0),我沒有任何關於升級或更改它的選擇(實際上,我認爲這是最新版本)。如何在JamVM中進行遠程調試?

我會心疼附加一個遠程調試器的一些舉步維艱的舊代碼,我寫的,所以我首先想到的是這個咒語:

jamvm -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=4000,suspend=n ... 

可悲的是沒有骰子有(沒有-Xdebug-Xrunjdwp被認可)。

所以我做了一個快速的jamvm -help然後jamvm -X並有一點點閱讀。沒有提示附加遠程調試器的可能性。

最後我轉向我們的老朋友戈格勒先生,發現在SourceForge上的this問題沒有答案。

所以我想我泡影,除非另有人知道,因此這...

有什麼辦法,我可以做遠程調試與JamVM?

回答

1

簡單的答案是「否」。

我實際上想要對運行jamvm的目標硬件(ARM)進行性能分析,因爲它的執行速度遠遠低於運行Oracle HotSpot VM的桌面。

我檢查了JamVM sources,但沒有隱藏的魔法。 JamVM的構建非常緊湊,因此增加了對遠程調試,性能分析,JMX以及不會臃腫虛擬機的支持。您可以使用-verbose來了解發生了什麼。使用例如:class,例如我至少能夠通過監視類加載來發現巨大的性能瓶頸。

jamvm -verbose[:class|gc|jni] 
    :class print out information about class loading, etc. 
    :gc print out results of garbage collection 
    :jni print out native method dynamic resolution 

然而,由於我們的應用有一定的那種薄薄HAL,我能夠使用的集成開發環境,分析器,調試器的全部功能是什麼,我會建議臺式機上運行它。

如果由於一些硬件特定的代碼不能在桌面上運行,這是不可能的,不幸的是我不知道其他方式比做醜陋的"printf debugging"

+0

非常感謝 - 這也是我得出的結論(在我的PC上進行調試,並希望它在設備上表現相同,當它沒有記錄日誌時,直到我找出原因)。好的提示詳細設置雖然,我沒有想到這樣做 - 可能已經保存了幾個日誌語句!因爲我無法想象一個更好的答案,所以我認爲+1和接受的答案都會發給你。 – kmp