JVM 堆的调整
执行 java -Xmx256m 正常再
执行此命令时 java -Xms128m 报错:
Error occurred during initialization of VM
Incompatible initial and maximum heap sizes specified
但是把 128M 换成 64M 以下就正常
我怀疑最大允许容量并没有增大,我应当怎么做?
执行 java -Xmx256m 正常再
执行此命令时 java -Xms128m 报错:
Error occurred during initialization of VM
Incompatible initial and maximum heap sizes specified
但是把 128M 换成 64M 以下就正常
我怀疑最大允许容量并没有增大,我应当怎么做?
如果我没记错的的话JVM默认的-Xmx 是64m
java -Xms128m 当然就会报错了
ms是最小mx是最大
最小怎能超过默认最大
java -Xms128m -Xmx128m就没问题了
运行此java -Xms128m -Xmx128m 命令后JVM的
最小堆容量应是128M,最大是128M。我再单独运行
ms时只要大于64M还是报错:
Error occurred during initialization of VM
Incompatible initial and maximum heap sizes specified
每次都是不同的JVM,没什么关系
我的程序要并发的画几个大图,当执行 java -Xmx256m 命令
测试时执行正常,可是放到 TOMCAT 上时就报错:
java.lang.OutOfMemoryError
<<no stack trace available>>
我在 TOMCAT 的 setclasspath.bat 文件中设置了
set _RUNJAVA="%JAVA_HOME%\bin\java -Xms256M -Xmx256M"
可还是不可以。
要画这么大的图?
最好换个实现方法,在web里实现本身就不好
如果你确认setclasspath.bat文件在Tomcat启动时能够被调用
就再改大一点吧
多谢 oldma 前辈。我的问题解决了,原因是 TOMCAT 根本没有读取
setclasspath.bat 文件,我把 TOMCAT 换成同版本的拷贝版就可
以了,把 setclasspath.bat 文件要更改成 set _RUNJAVA="%JAVA_HOME%\bin\java" -Xmx256m 形式,而非set _RUNJAVA="%JAVA_HOME%\bin\java -Xmx256m"形式
上一设置在 Windows下正常,但在 Linux 下设置 setclasspath.sh 文件后
不能正常运行,请问设置 setclasspath.sh 文件的格式是什么?
bash:
#!/bin/sh
xxx=......
export xxx
csh:
#!/bin/sh
setenv xxx=....
#!/bin/csh
setenv xxx=...
大哥我没有看明白,能具体一点吗?谢谢。
问题已经解决,谢谢