2011-11-04 88 views
7

是否有可能输出当前堆栈跟踪方法签名?我试图调试一些混淆的代码,它有很多方法具有相同的名称,只是参数和返回类型不同。Java - 是否有可能用方法签名输出堆栈跟踪?

有些东西会工作:

Thread.currentThread().getStackTrace(); 
new Throwable().getStackTrace(); 
// etc.. 
+1

如果它被混淆并且正在调试它,那么要么是您的代码,并且您应该在某个地方有一个未混淆的版本,或者它不是,并且您不应该调试它。 –

+0

这有点主观,你不觉得吗? – jli

+4

@JBNizet呃,有理由找出图书馆中的问题,你没有资料来源,也不清楚。 –

回答

3

不是,但是您可以在排除故障的情况下使用AspectJ进行测试,以获得更完整的信息而无需添加日志记录。

根据您试图调试的内容以及您对涉及的任何数据了解多少,您可能可以精确定位目标。

1

不可能的。堆栈跟踪不包含该信息。