簡體   English   中英

如何在Java中打印出本機stacktrace?

[英]How to print out native stacktrace in Java?

我想打印Java應用程序的本機方法調用的stacktrace Thread.dumpStack()僅打印java方法調用。

如果您需要非Java堆棧,則需要一個“本機”調試器,例如gdb

您也可以使用gdb附加到正在運行的Java。

有關使用gdb 無縫調試Java的文檔,另請參見: http : //gcc.gnu.org/java/gdb.html

(gcc可以將Java代碼編譯為本機代碼;這時本機調試器還將顯示Java回溯。)

如果可以在應用程序外部執行此操作,則可以運行$JAVA_HOME/bin/jstack -m <jvm_pid>

要查看內部JVM(C級)函數調用,請將標准C調試器附加到進程。

確切的操作方式取決於您的操作系統和選擇的調試器,例如在OSX上,將使用xcode。 可以在此處閱讀有關使用gdb的說明。

暫無
暫無

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

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