试试这个:
StackTraceElement[] stack = Thread.currentThread ().getStackTrace (); StackTraceElement main = stack[stack.length - 1]; String mainClass = main.getClassName ();
当然,这仅在从主线程运行时有效。不幸的是,我认为没有系统属性可以查询找到。
编辑: 拉入@John Meagher的评论,这是个好主意:
要扩展@jodonnell,您还可以使用Thread.getAllStackTraces()获取系统中的所有堆栈跟踪。从中可以搜索所有堆栈跟踪中的“主”线程,以确定主类是什么。即使您的类不在主线程中运行,这也将起作用。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)