我知道这是一个常见的问题/问题。我想知道从哪里开始。
在Windows Server 2008上运行java,我们有65GB内存,它显示25GB免费。 (目前有几个人在运行流程)。
systeminfo | grep -i memory
所示:
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 -version
给了我:
Error occured during initialization of VM
could not reserve enough space for object heap
更具体的问题:
java -version
)想要使用多少内存? 答案 0 :(得分:2)
我遇到了同样的问题。从分析中,我们发现机器的交换空间很小。 请增加交换空间并验证。
答案 1 :(得分:0)
正如我发现当遇到类似问题时(虽然系统内存少得多 - 请参阅Cannot run a 64-bit JVM in 64-bit Windows 7 with a large heap size),但在Windows上,JVM将尝试分配连续的块记忆。
所以我敢打赌,虽然你有足够的总内存,但你没有足够的连续的内存。
答案 2 :(得分:0)
至少看java版本运行 java -Xmx64m -version 如果需要,这应该显示版本。然后你可以尝试增加Xmx并查看它失败的值