gpt4 book ai didi

java - 仅获取 Stack Trace 的前 N ​​行

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:41:58 25 4
gpt4 key购买 nike

我有一个从 ID 调用返回对象的工厂方法。

模拟代码:

public static Object getById(String id) {
Object o = CRUD.doRecovery(Class, id);
if(o == null) {
printLogMessage("recovery by ID returned Null: " + id);
// would really like to show only a few lines of stack trace.
}
return o;
}

如何只显示堆栈跟踪的前 N ​​行(这样我就知道方法的调用者)而不将整个堆栈跟踪转储到日志中或不必依赖外部库?

最佳答案

您可以使用ex.getStackTrace() 获取堆栈元素,StackTraceElement 包含一行完整堆栈,然后打印您想要的内容。

StackTraceElement[] elements = ex.getStackTrace();
print(elements[0]);

关于java - 仅获取 Stack Trace 的前 N ​​行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21706722/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com