mirror of
https://gitee.com/dromara/hutool.git
synced 2025-04-24 18:04:54 +08:00
!983 不使用Apache-Commons-Lang3的获取最尾端异常,采用递归方式
Merge pull request !983 from 墨石/v6-dev
This commit is contained in:
commit
867ae94b74
@ -416,16 +416,17 @@ public class ExceptionUtil {
|
||||
* 此方法通过调用{@link Throwable#getCause()} 直到没有cause为止,如果异常本身没有cause,返回异常本身<br>
|
||||
* 传入null返回也为null
|
||||
*
|
||||
* <p>
|
||||
* 此方法来自Apache-Commons-Lang3
|
||||
* </p>
|
||||
*
|
||||
* @param throwable 异常对象,可能为null
|
||||
* @return 最尾端异常,传入null参数返回也为null
|
||||
*/
|
||||
public static Throwable getRootCause(final Throwable throwable) {
|
||||
final List<Throwable> list = getThrowableList(throwable);
|
||||
return list.size() < 1 ? null : list.get(list.size() - 1);
|
||||
Throwable cause = throwable.getCause();
|
||||
if (cause != null) {
|
||||
return getRootCause(cause);
|
||||
}else{
|
||||
return throwable;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user