废话:其实很多时候出现错误不是不能解决,而是不知道如何通过搜索查询到想要的答案,这个问题不是一直出现,没有错误打印简直无法下手,但是又会导致整个程序崩溃不可忽视,一直断断续续困扰了两个礼拜之久,一是问题间断发生,难以捕捉,二是经验不足,容易忽视一些东西,开始的时候百度谷歌几乎翻遍了,大多关于Python出现这种情况,或者解决方法于我无用,然后问过一些大佬们,总算给了我一丝灵感,注意到jvm的日志,从而开始解决,由于没有更高级的替换文件,遂整个换了一种方法来达到效果。第二次遇到的时候更加蛋疼,连日志也没有了,又头秃了几天,然后发现事件查看器可以完美找到要害。最后以此记录,希望能帮到大家。
1、问题描述
Process finished with exit code -1073741819 (0xC0000005)
java程序异常退出,且不包含错误打印,连带tomcat停止运行,常见导致的原因为:堆栈溢出,调用的底层dll文件出错,常伴随jvm错误日志出现,格式为hs_err_pid36224.log,其中包含具体错误原因
Process finished with exit code -1073740791 (0xC0000409)
问题同上,但是不会出现错误日志,可以查看计算机管理中事件查看器,造成程序异常停止的原因
2、解决方法
如果堆栈溢出,调整jvm的合适大小就行
如果是底层dll文件出错,可以替换更高级的jar包或者替换调用的dll文件
3、注意
事件查看器中,可能会发现错误的情况有windows系统本身的dll文件导致错误,一般这种情况要么就是你用到的dll文件调用了windows本身的dll文件,可能是多线程调用的原因,但底层不允许如此调用从而导致奔溃,可以自己多排查几遍,还有我在网上看到的另外的情况说是更新相关的程序驱动,暂时我没有遇到过,有待考证。
如何查看事件查看器
右击计算机->管理->事件查看器->自定义视图->管理事件,其中来源为Application Error的错误