jvm崩溃原因官方(eclipse 打开java 崩溃)

2026-04-18 21:45:02 0

jvm崩溃原因官方(eclipse 打开java 崩溃)

大家好,今天小编来为大家解答以下的问题,关于jvm崩溃原因官方,eclipse 打开java 崩溃这个很多人还不知道,现在让我们一起来看看吧!

本文目录

eclipse 打开java 崩溃

这句话:
# The crash happened outside the Java Virtual Machine in native code.
是在说,进程崩溃发生在 JVM 之外的 native 代码,因此这是第三方的 dll / so 库的问题,不是 Java 的毛病。具体原因不清楚,本身这个 dump core 错误只是给 JVM 的开发支持人员看的,我们作为应用程序开发人员是看不懂它的日志的,除非你同时也精通 C / C++ 或汇编。
看上去你使用 -server 方式启动 eclipse,是想让 eclipse 得到更好的性能,它本身会导致 jvm 申请更多的内存,可能会挤压其它应用程序的内存需求,比如当你在同一台机器又开另一个程序来 debug 时。一般来说 -server 方式是给专职服务器用的,它们基本上不存在把进程在前台和后台之间频繁切换,也不存在多个应用程序抢内存的事情。
当内存紧张时 JVM 本身的内置的 API 的 dll 部分也经常会报告错误,比如读取一个 jar 会打开一个文件输入流都可能出现未知异常,但一般 jvm 知道这件事,它不会说:崩溃发生在 jvm 之外。

JVM崩溃是什么原因

Java的应用有时候会因为各种原因Crash,这时候会产生一个类似java_errorpid.log的错误日志。可以拿到了
这个日志,怎样分析Crash的原因呢?下面我们来详细讨论如何分析java_errorpid.log的错误日志。
一. 如何得到这个日志文件
如果有一个严重的错误引起Java进程非正常退出,我们叫Crash,这时候会产生一个日志文件。缺省情况下,这个
文件会产生在工作目录下。但是,可以在Java启动参数通过下面的设置,来改变这个文件的位置和命名规则。例如:
java -XX:ErrorFile=/var/log/java/java_error_%p.log
就将这个错误文件放在/var/log/java下,并且以java_error_pid.log的形式出现。
二.产生错误的原因
造成严重错误的原因有多种可能性。Java虚拟机自身的Bug是原因之一,但是这种可能不是很大。在绝大多数情况下,是由于系统的库文件、API或第三方的库文件造成的;系统资源的短缺也有可能造成这种严重的错误。在发生了Crash之后,如果无法定位根本原因,也应该迅速找到Work Around的方法。
三.对日志文件的分析
首先要检查日志的文件头:例如,下面是从一个客户发过来的错误日志的文件头

如何在 IBM i 上分析 J9 虚拟机崩溃问题

Java 虚拟机非正常地停止运行可能是多种原因引起的,例如 Java 程序产生了无法处理的异常,虚拟机运行过程中产生不可恢复的错误,虚拟机所在的进程崩溃等。对于 Java 异常和虚拟机内部产生的错误,一般会有对应的错误消息指示发生了哪种问题,相对容易找到问题的根源。而对于虚拟机崩溃问题相对比较复杂。崩溃通常由以下几种原因产生:
在与 JNI 相关的本地代码中崩溃
JNI 是 Java Native Interface 的缩写,即 JAVA 本地调用。从 Java1.1 开始,Java Native Interface(JNI) 标准成为 java 平台的一部分,它允许 Java 代码和其他语言写的代码进行交互。
本地代码在多种情况下都会用到 JNI。 而 JNI 的使用中有许多需要注意的问题(详见”使用 Java Native Interface 的最佳实践“)。这些本地代码对 JNI 不正确的使用往往会造成 J9 所在的 JOB 崩溃。使用 JNI 的方式包括:
Java 本地方法
在 IBM i 上一个 Java 方法可以用 ILE 或者 PASE 环境下的其他语言来实现。
使用 Invocation API
Invocation API 是 JNI 的一部分,它可以用来将 Java 虚拟机(JVM)嵌入到本机应用程序中,从而允许程序员从本机代码内部调用 Java 代码。同时也可以用其他语言通过 JNI 函数接口来调用 Java 代码。
JVMTI agent
JVMTI(JVM Tool Interface)是 Java 虚拟机所提供的本地编程接口,是 JVMPI(Java Virtual Machine Profiler Interface)和 JVMDI(Java Virtual Machine Debug Interface)的更新版本。JVMTI 提供了可用于 debug 和 profiler 的接口;同时也支持监听(Monitoring),线程分析(Thread analysis)以及覆盖率分析(Coverage Analysis)等功能。JVMTI 提供一套本地代码接口,因此使用 JVMTI 需要我们与 C/C++ 以及 JNI 打交道。开发时一般采用建立一个 Agent 的方式来使用 JVMTI,它使用 JVMTI 函数,设置一些回调函数,并从 Java 虚拟机中得到当前的运行态信息,并作出自己的判断,最后还可能操作虚拟机的运行态。把 Agent 编译成一个动态链接库之后,我们就可以在 Java 程序启动的时候来加载它(启动加载模式),也可以在 Java 5 之后使用运行时加载(活动加载模式)。
在 J9 内部崩溃
J9 自身也可能存在 bug,从而导致虚拟机崩溃。
其他与 J9 无关的本地代码崩溃
IBM i 引入 Java 虚拟机后,许多程序通过增加 Java 代码来实现新功能。原有功能仍然由本地代码实现。这些本地代码中可能存在对内存的直接访问 ( 如 C/C++ 代码 ),不正确的指针访问可能导致 JVM 崩溃。
内存覆盖导致的崩溃
除了有可能造成直接崩溃以外,上面所提到的各种本地代码在对不正确的内存地址进行写入时,可能会覆盖正确的内存数据,从而导致后面访问了这些错误数据的代码崩溃。
收到异常信号
J9 内部安装了自己的信号处理函数,当收到某些信号比如 ABORT 时,J9 会产生 core dump 并使当前 JOB 退出。
本地内存耗尽
目前在 IBM i 上支持运行 32 位或 64 位的 J9 版本。对于 32 位的 J9 来说,由于地址模型的限制,J9 所使用的内存最多为 4GB。Java 堆以及本地内存都存放于这 4G 的地址空间中。当 Java 堆或本地内存地址耗尽时,一般情况下 J9 会抛出 java.lang.OutOfMemoryError 异常。但在本地内存不足时,有时也会造成 job 崩溃。例如创建线程或调用其他需要分配本地内存的 API 的时候。对于 64bit 的 J9,其地址空间达到 1 EB,因此一般没有地址空间耗尽的问题。仅在极少数情况下可能因系统物理内存

关于jvm崩溃原因官方到此分享完毕,希望能帮助到您。

jvm崩溃原因官方(eclipse 打开java 崩溃)

本文编辑:admin

更多文章:


css排版布局网站(为什么网站要用div+css排版)

css排版布局网站(为什么网站要用div+css排版)

各位老铁们好,相信很多人对css排版布局网站都不是特别的了解,因此呢,今天就来为大家分享下关于css排版布局网站以及为什么网站要用div+css排版的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录为什么网站要用d

2026年6月11日 02:00

diverse culture课件(英语邮件范例:旅游英语怎么表达)

diverse culture课件(英语邮件范例:旅游英语怎么表达)

这篇文章给大家聊聊关于diverse culture课件,以及英语邮件范例:旅游英语怎么表达对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录英语邮件范例:旅游英语怎么表达印度文化英语ppt介绍英语邮件范例:旅游英语怎么表达De

2026年3月2日 00:30

附近ui设计培训机构(ui设计哪里有培训班)

附近ui设计培训机构(ui设计哪里有培训班)

这篇文章给大家聊聊关于附近ui设计培训机构,以及ui设计哪里有培训班对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录ui设计哪里有培训班ui培训设计哪里好ui设计培训机构哪好ui设计培训什么机构好丽江附近的网页UI设计培训机构

2025年9月15日 12:45

字符串全排列(abcdefgh由这八个字符构成的全排列字符串,要求不能出现以下子串:abc ,de,gh.求能有)

字符串全排列(abcdefgh由这八个字符构成的全排列字符串,要求不能出现以下子串:abc ,de,gh.求能有)

本篇文章给大家谈谈字符串全排列,以及abcdefgh由这八个字符构成的全排列字符串,要求不能出现以下子串:abc ,de,gh.求能有对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解

2026年3月9日 23:15

物联网系统开发(物联网应用技术就业方向及前景)

物联网系统开发(物联网应用技术就业方向及前景)

本篇文章给大家谈谈物联网系统开发,以及物联网应用技术就业方向及前景对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录物联网应用技术就业方向及前

2025年9月20日 08:00

javascript 字符串转数字(如何用JavaScript对字符串进行解析并计算出结果)

javascript 字符串转数字(如何用JavaScript对字符串进行解析并计算出结果)

大家好,如果您还对javascript 字符串转数字不太了解,没有关系,今天就由本站为大家分享javascript 字符串转数字的知识,包括如何用JavaScript对字符串进行解析并计算出结果的问题都会给大家分析到,还望可以解决大家的问题

2025年5月28日 03:00

如何使用u盘安装linux系统(怎么用u盘安装过linux详细步骤!)

如何使用u盘安装linux系统(怎么用u盘安装过linux详细步骤!)

今天给各位分享怎么用u盘安装过linux详细步骤!的知识,其中也会对怎么用u盘安装过linux详细步骤!进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录怎么用u盘安装过linux详细步骤!怎么把linux系统装

2026年1月10日 17:45

java int占几个字节(java int 是几位)

java int占几个字节(java int 是几位)

大家好,如果您还对java int占几个字节不太了解,没有关系,今天就由本站为大家分享java int占几个字节的知识,包括java int 是几位的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本文目录java int

2025年11月8日 02:15

计算机c语言是一种什么语言(c语言是什么)

计算机c语言是一种什么语言(c语言是什么)

“计算机c语言是一种什么语言”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看计算机c语言是一种什么语言(c语言是什么)!本文目录c语言是什么c语言是计算机的什么语言c语言是一种什么语言c语言是什么C语言是种什么语言c语言是什

2025年10月25日 17:00

domestic abuse only happens(帮我翻译一下这段英语 谢谢啦 ~!!!!!!!!!!!!!!!!!!!)

domestic abuse only happens(帮我翻译一下这段英语 谢谢啦 ~!!!!!!!!!!!!!!!!!!!)

这篇文章给大家聊聊关于domestic abuse only happens,以及帮我翻译一下这段英语 谢谢啦 ~!!!!!!!!!!!!!!!!!!!对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录帮我翻译一下这段英语 谢谢

2026年4月17日 08:45

layer是可数名词吗(英语量词的用法)

layer是可数名词吗(英语量词的用法)

这篇文章给大家聊聊关于layer是可数名词吗,以及英语量词的用法对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录英语量词的用法cover(反义词) appear(反义词)layer什么意思bottom up 的意思是什么,哪位

2025年10月10日 23:15

settimeout怎么停止(window.setTimeout 停止 取消)

settimeout怎么停止(window.setTimeout 停止 取消)

各位老铁们好,相信很多人对settimeout怎么停止都不是特别的了解,因此呢,今天就来为大家分享下关于settimeout怎么停止以及window.setTimeout 停止 取消的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起

2025年6月10日 15:15

word如何设置图片居中?网页中如何用HTML/CSS实现文字居中于图片

word如何设置图片居中?网页中如何用HTML/CSS实现文字居中于图片

“图片居中”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看word如何设置图片居中?网页中如何用HTML/CSS实现文字居中于图片!本文目录word如何设置图片居中网页中如何用HTML/CSS实现文字居中于图片在Word中插

2025年6月28日 16:15

php教程视频谁的好(哪里的php视频教程不错我想自学php)

php教程视频谁的好(哪里的php视频教程不错我想自学php)

大家好,今天小编来为大家解答以下的问题,关于php教程视频谁的好,哪里的php视频教程不错我想自学php这个很多人还不知道,现在让我们一起来看看吧!本文目录哪里的php视频教程不错我想自学phpPHP视频教程谁的比较好谁有黑马程序员的PHP

2026年5月11日 14:15

unity 命名空间(为什么unity无法将脚本添加到空的对象)

unity 命名空间(为什么unity无法将脚本添加到空的对象)

“unity 命名空间”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看unity 命名空间(为什么unity无法将脚本添加到空的对象)!本文目录为什么unity无法将脚本添加到空的对象Unity中各类加载方式的比较Unity

2026年1月21日 21:00

decimal在python(python字符的精度不够,用什么填充)

decimal在python(python字符的精度不够,用什么填充)

大家好,关于decimal在python很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于python字符的精度不够,用什么填充的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对

2026年8月13日 02:15

湖南网站建设公司(长沙可迅网络科技有限公司怎么样)

湖南网站建设公司(长沙可迅网络科技有限公司怎么样)

这篇文章给大家聊聊关于湖南网站建设公司,以及长沙可迅网络科技有限公司怎么样对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录长沙可迅网络科技有限公司怎么样湖南半点科技有限公司怎么样请问:湖南有哪些可靠的软件开发公司求介绍湖南唐唐

2025年11月29日 06:15

mysql大数据查询优化(学习MySQL如何优化查询速度)

mysql大数据查询优化(学习MySQL如何优化查询速度)

大家好,关于mysql大数据查询优化很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于学习MySQL如何优化查询速度的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助

2025年10月29日 02:15

禁止iframe嵌套(https页面iframe嵌套http的页面,弹出警告,怎么解决)

禁止iframe嵌套(https页面iframe嵌套http的页面,弹出警告,怎么解决)

大家好,关于禁止iframe嵌套很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于https页面iframe嵌套http的页面,弹出警告,怎么解决的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关

2026年5月5日 09:45

shell脚本切换路径(shell脚本 如何切换当前目录)

shell脚本切换路径(shell脚本 如何切换当前目录)

本篇文章给大家谈谈shell脚本切换路径,以及shell脚本 如何切换当前目录对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录shell脚本

2025年7月19日 03:30

近期文章

本站热文

electronics软件(labcenter electronics是什么软件)
2025-05-22 23:45:02 浏览:134
博客是微博吗(博客是微博吗)
2025-05-22 22:45:01 浏览:111
diversity and distribution(悬赏英语短文)
2025-05-23 16:15:02 浏览:107
ios软件开发前景(iOS就业前景怎么样)
2025-05-22 23:00:01 浏览:102
next month(有The next month这个单词吗,和 next month有什么区别)
2025-05-23 02:30:01 浏览:102
patron(patron是什么意思)
2025-05-23 10:30:02 浏览:95
标签列表

热门搜索