我知道这是一个常见的问题。我想知道从哪里开始。
在 windows server 2008 上运行 java,我们有 65GB 内存,它显示 25GB 空闲。 (目前有几个人正在运行进程)。
系统信息 | grep -i 内存
显示:
Total Physical Memory: 65, 536 MB Available Physical Memory: 26,512MB Virtual Memory: Max Size 69,630 MB Virtual Memory: Available 299 MB Virtual Memory: In Use: 69, 331 MB.
真的只是想知道我是如何着手解决这个问题的。
- 我从哪里开始?
- 正在使用更多虚拟内存是什么意思 使用的比物理内存多,这就是 java 无法启动的原因吗?
- 做 java要使用虚拟内存而不是物理内存?
java -version
给我:
VM 初始化时出错
无法为对象堆保留足够的空间
更具体的问题:
- 为什么 JVM 不想使用空闲的物理内存?
- 如果不指定 Xms 参数,java 命令(如
java -version
)要使用多少内存? - 简单地分配更多虚拟内存是否是解决问题的好方法?
最佳答案
我遇到了同样的问题。通过分析,我们发现该机器的交换空间不足。 请增加交换空间并验证。
关于java - 运行 java -version 时“无法为对象堆保留足够的空间”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14926989/