探讨一个“无法创建JVM”的问题

简介: 记录一个今天遇到的问题。Java版本:1.4运行设置: -Xms1G -Xmx4G报错:[ Incompatible initial and maximum heap sizes specified: ][ initial size:10737418...

记录一个今天遇到的问题。

Java版本:1.4

运行设置: -Xms1G -Xmx4G

报错:

[ Incompatible initial and maximum heap sizes specified: ]
[ initial size:1073741824 bytes, maximum heap size: 67108864 bytes ]
[ The initial heap size must be less than or equal to the maximum heap size. ]
[ The default initial and maximum heap sizes are 4194304 and 67108864 bytes. ]
无法创建Java虚拟机。

疑问:执行语句中设置初始化内存1G,最大内存4G,但是错误提示中为什么最大内存是64M?

尝试1:固定Xmx为4G

1、Xms修改为512M,1G,2G,3G均报相同的错误
2、Xms修改为4G(与Xmx相同),正常运行
3、Xms修改为小于等于64M,正常运行

尝试2:固定Xms为1g,修改Xmx

1、Xmx4g,报之前的错误
2、Xmx4000M,正常运行
3、Xmx3g,正常运行
4、Xmx3500M,如下报错:

[ Unable to mmap Java heap of requested size, perhaps the maxdata value is too large - see Java README.HTML for more information. ] 
JVMDG218: JVM is not fully initialized - will not do dump processing.

此程序一般肯定会用掉至少1G内存,设置为64M会使得GC太过频繁,所以目前Xms设置为4G来用,就是不理解为什么设置在大于64M小于4G的时候会创建JVM失败,并且提示最大内存是64M。
望高手指导,谢谢~

目录
相关文章
|
2月前
|
存储 算法 安全
【JVM】深入理解JVM对象内存分配方式
【JVM】深入理解JVM对象内存分配方式
31 0
|
8月前
|
安全 前端开发 Java
JVM(一)JVM概述
JVM(一)JVM概述
40 0
|
12月前
|
Java
JVM - 应用JVM核心参数推荐设置
JVM - 应用JVM核心参数推荐设置
219 0
|
12月前
|
存储 算法 Java
JVM,关于JVM基础的知识,你确定不了解一下吗?
JVM,关于JVM基础的知识,你确定不了解一下吗?
|
存储 缓存 监控
JVM学习(五):JVM运行时参数
JVM学习(五):JVM运行时参数
214 0
JVM学习(五):JVM运行时参数
|
算法 安全 Java
jvm 之 对象的创建
jvm 之 对象的创建
136 0
|
存储 安全 Java
JVM02-JVM的对象创建以及访问方式
上一篇我们介绍了JVM的内存区域布局,并且重点介绍了堆和栈的概念。,今天我们接着来学习JVM的对象创建过程已经对象的访问方式。前言。
125 0
JVM02-JVM的对象创建以及访问方式
获取当前jvm数据
获取当前jvm数据
125 0
|
存储 Java 编译器
初识JVM(JVM运行流程,JVM运行时数据区,内存布局中的异常)
JVM(Java Virtual Machine),为Java虚拟机,虚拟机是指通过软件模拟一个具有完整的硬件功能并且运行在完全隔离的环境中的完整的计算机系统,JVM是一台被定制过的现实中不存在的计算机。
初识JVM(JVM运行流程,JVM运行时数据区,内存布局中的异常)
|
存储 Java
jvm(3) -- 运行时内存模型、对象的创建过程
jvm(3) -- 运行时内存模型、对象的创建过程
jvm(3) -- 运行时内存模型、对象的创建过程