我试图通过将以下行添加到catalina.sh来调整tomcat 7(CentOS,java -version:1.6.0_25-b06)实例的初始堆大小:
export CATALINA_OPTS="-Xms=512M -Xmx=1024M"
启动tomcat失败并将以下消息记录到catalina.out:
Invalid initial heap size: -Xms=512m
Could not create the Java virtual machine.
这些选项有什么问题?
答案 0 :(得分:108)
您不得使用=
。只需使用:
export CATALINA_OPTS="-Xms512M -Xmx1024M"
答案 1 :(得分:26)
使用以下命令正确增加tomcat7(linux发行版)的java堆大小:
echo 'export CATALINA_OPTS="-Xms512M -Xmx1024M"' > /usr/share/tomcat7/bin/setenv.sh
答案 2 :(得分:10)
您可能无需导出,只需在 catalina.sh 中添加此行:
CATALINA_OPTS="-Xms512M -Xmx1024M"
答案 3 :(得分:3)
setenv.sh更好,因为您可以轻松地将此类配置从一台机器移植到另一台机器,或从一个Tomcat版本移植到另一台机器。 catalina.sh从一个版本的Tomcat变为另一个版本。但是你可以使用任何版本的Tomcat保持你的setenv.sh不变。
另一个优点是,如果将更改添加到备份或版本控制系统,则更容易跟踪更改的历史记录。如果您看看setenv.sh在历史记录中的变化,您将只看到自己的更改。然而,如果您使用catalina.sh,您将不仅会看到您的更改,而且还会看到每个较新版本的Tomcat附带的更改。
答案 4 :(得分:1)
小心改变Debian发行版!我试图在我的Debian 7中更改CATALINA_OPTS
以及tomcat不再启动的结果。因此,我通过更改属性JAVA_OPTS
代替CATALINA_OPTS
来解决此问题,就像这样
export JAVA_OPTS="-Xms512M -Xmx1024M"
答案 5 :(得分:1)
刚刚遇到这个,我已经实施了Nathan的解决方案:
添加行(根据需要更改值):
export JAVA_OPTS="-Xms512M -Xmx1024M"
到/usr/share/tomcat7/bin/setenv.sh
如果该文件不存在,则创建它并
chown root:root it
chmod 755 it
然后重启tomcat和 检查
ps aux | grep logging
应该只选择实例并显示java parms
答案 6 :(得分:1)
即使不使用'export'关键字也能正常工作。这就是我在setenv.sh(/usr/share/tomcat7/bin/setenv.sh)中所拥有的功能。
操作系统:14.04.1-Ubuntu 服务器版本:Apache Tomcat / 7.0.52(Ubuntu) 服务器内置:2016年6月30日01:59:37 服务器编号:7.0.52.0JAVA_OPTS="-Dorg.apache.catalina.security.SecurityListener.UMASK=`umask` -server -Xms6G -Xmx6G -Xmn1400m -XX:HeapDumpPath=/Some/logs/ -XX:+HeapDumpOnOutOfMemoryError -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:SurvivorRatio=8 -XX:+UseCompressedOops -Dcom.sun.management.jmxremote.port=8181 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"
JAVA_OPTS="$JAVA_OPTS -Dserver.name=$HOSTNAME"
答案 7 :(得分:1)
花了很多时间在这上面。我发现这就是setenv.bat必须看起来的样子。没有“批处理文件中接受字符。
设置CATALINA_OPTS = -Xms512m -Xmx1024m -XX:PermSize = 128m -XX:MaxPermSize = 768m
echo hello“%CATALINA_OPTS%”
答案 8 :(得分:0)
转到" Tomcat目录" / bin目录
如果Linux然后创建setenv.sh,如果Windows然后创建setenv.bat
setenv。*文件的内容:
export CATALINA_OPTS="$CATALINA_OPTS -Xms512m"
export CATALINA_OPTS="$CATALINA_OPTS -Xmx8192m"
export CATALINA_OPTS="$CATALINA_OPTS -XX:MaxPermSize=256m"
之后重新启动tomcat并使用新的参数。
解释和完整信息在这里
http://crunchify.com/how-to-change-jvm-heap-setting-xms-xmx-of-tomcat/
答案 9 :(得分:0)
如果在您的centos 7计算机中不起作用“ export CATALINA_OPTS =“-Xms512M -Xmx1024M””,则可以从vi /etc/systemd/system/tomcat.service文件中更改堆内存,然后此值在tomcat中显示为ps -ef | grep tomcat的帮助。