java - 无法为对象堆保留足够的空间来启动 JVM

标签 java linux memory jvm

刚刚遇到奇怪的问题。当我输入时

java -version

我明白了

Error occurred during initialization of VM
Could not reserve enough space for object heap
Could not create the Java virtual machine.

.

java -Xms64m -Xmx64m -version

这个命令很好用

java version "1.6.0_24"
Java(TM) SE Runtime Environment (build 1.6.0_24-b07)
Java HotSpot(TM) Client VM (build 19.1-b02, mixed mode)

如果我将 xms、xmx 更改为 128m,我会再次出错。

使用 top 命令和 free -m 我可以看到,我获得了超过 192 mb 的空闲空间,那么为什么我仍然会收到此错误?

Mem:    262144k total,    64760k used,   197384k free,        0k buffers
Swap:        0k total,        0k used,        0k free,        0k cached

谢谢

最佳答案

在 64 位环境中使用 32 位版本的 java 时,我遇到了同样的问题。在 64 位操作系统中使用 64 位 java 时没问题。

关于java - 无法为对象堆保留足够的空间来启动 JVM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6642184/

相关文章:

ios - 快速图像内存

java - 可以在流上计算 SHA-1 算法吗?内存占用少?

node.js - node.js 中 SSL 连接的大约内存开销是多少

java - 传递参数(新手)(Java)

JavaFx 2 使用单列创建 TableView

c++ - 从 int 到 void * 的转换是可能的吗?

linux - 在 Linux 中使用 find 命令尝试匹配文件名时忽略大小写

c++ - 有趣的代码行为

java - 什么是原始类型,为什么我们不应该使用它呢?

java - 为什么在Spring的@Configuration中使用@Autowired有时会失败?