java 中可以通过 eclipse 等工具直接打印堆栈,但是对于某些环境中无法使用 eclipse 工具时,需要知道堆栈,如何处理呢?
介绍3种方法供选择:
方法一:
package name.xu; public class callstack { public static void printcallstatck() { throwable ex = new throwable(); stacktraceelement[] stackelements = ex.getstacktrace(); if (stackelements != null) { for (int i = 0; i < stackelements.length; i++) { system.out.print(stackelements[i].getclassname()+"/t"); system.out.print(stackelements[i].getfilename()+"/t"); system.out.print(stackelements[i].getlinenumber()+"/t"); system.out.println(stackelements[i].getmethodname()); system.out.println("-----------------------------------"); } } } }
方法二:
exception e = new exception("this is a log"); e.printstacktrace();
方法三:
方法四:
thread.currentthread().getstacktrace()
个人推荐,方法一,原因:简单易用,速度快
参考资料:
1、
2、
3、【推荐仔细看看】
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持移动技术网。
如对本文有疑问, 点击进行留言回复!!
详解SpringBoot修改启动端口server.port的四种方式
网友评论