7

根据 JVM 6 文档,服务器类机器默认接收初始堆大小为 1/4 RAM 或 1GB。考虑到我们的 Solaris 64Bit 服务器有 64 GB,初始堆大小将默认为 256MB。因此,我需要使用 XMX 参数手动设置堆大小为 4GB。但是,当我添加“-Xmx4096M”时,Tomcat 不会启动。这是错误消息:

Invalid maximum heap size: -Xmx4096M
The specified size exceeds the maximum representable size.
Could not create the Java virtual machine.

我的命令行参数应该是什么才能让我的堆增长到 4GB?

4

4 回答 4

7

感谢您的所有输入,伙计们!虽然,我java -version提到的输出mixed mode意味着它是 64 位。真正的解决方案是添加-d64以强制它以 64 位运行,因此分配 4GB。

于 2012-07-09T16:07:17.653 回答
5

我的解决方案基于对问题的评论:您使用的是 32 位 JVM,因此它不能处理超过 4GB(不包括在内)。尝试安装64位版本

于 2012-07-09T15:35:23.070 回答
4

根据 的输出java -version,安装了 32 位 JVM。如果它是 64 位的,你应该得到类似Java HotSpot(TM) 64-Bit Server VM.

尝试安装 64 位 JVM,它将解决您的问题。

于 2012-07-09T15:39:00.073 回答
0

使用 -Xmx1024M -XX:MaxPermSize=256M

于 2016-07-22T10:20:12.057 回答