NullPointerException没有异常栈打印

作者: 5473 分类: JAVA 发布时间: 2020-05-26 22:58 阅读数:173

2020-05-25 09:45:17.961 [task-22] ERROR o.s.a.i.SimpleAsyncUncaughtExceptionHandler - Unexpected error occurred invoking async method 'public void dcp.bss.qrtz.job.service.VehicleAlarm.overspeed(dcp.bss.entity.RealTimeGpsLocation)'.
java.lang.NullPointerException: null

问题:日志只记录了java.lang.NullPointerException: null,没有打印出异常栈信息。

原因:JVM虚拟机会对异常信息进行优化,当相同异常出现很多次,会认为它是热点异常,忽略掉异常堆栈信息;代码中出现空指针异常的地方是一个定时任务在不停地调用,当服务刚刚启动时,这个异常栈是正常打印的,后来当这个异常出现次数太多时JVM就会将其过滤掉了。

解决:通过启动时增加JVM参数:-XX:-OmitStackTraceInFastThrow可解决。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注