如何在FreeBSD上为tomcat设置JAVA_OPTS?

时间:2013-09-04 18:29:40

标签: java tomcat freebsd permgen java-opts

我收到了OutOfMemoryError: PermGen space错误 我使用命令运行tomcat:

/usr/local/etc/rc.d/tomcat7 start

我正在尝试增加PermGen空间(JAVA_OPTS="-XX:PermSize=256m -XX:MaxPermSize=256m")。

我尝试将此字符串添加到下一个地方:

catalina.sh
startup.sh
setenv.sh
tomcat7(/usr/local/etc/rc.d/)

但这没有效果。默认Tomcat服务器状态(/ manager / status)显示PS Perm Gen只允许82MB。

我做错了什么?

OS Name: FreeBSD
OS Version: 9.1-STABLE
# java -version
openjdk version "1.7.0_21"
OpenJDK Runtime Environment (build 1.7.0_21-b11)
OpenJDK 64-Bit Server VM (build 23.21-b01, mixed mode)

2 个答案:

答案 0 :(得分:3)

是什么帮助了我: 在tomcat7(/usr/local/etc/rc.d/)

tomcat7_java_opts="-XX:PermSize=256m -XX:MaxPermSize=256m"

答案 1 :(得分:0)

我怀疑机器上的服务器进程没有找到正确的Java OPTS。 请尝试在服务器上找到该进程并检查传递的参数。

在Linux中,它通常是

  

ps -ef | grep tomcat
  或ps -ef | grep java

找出进程并验证JVM参数。

编辑1:这是查找进程的命令的示例输出,可能表示java opt参数值:

    local-vm-1 [5]:ps -ef | grep tomcat


tomcat    4141     1  0 07:38 ?        00:01:33 /apps/mw/jdk/1.6.0.17-64bit/bin/java -Dnop -Xms1024m -Xmx1024m -server -DTC=testplatform -DWMC_ENV
=test -XX:MaxNewSize=112m -XX:NewSize=112m -XX:SurvivorRatio=6 -XX:PermSize=256m -XX:MaxPermSize=256m -Dsun.net.inetaddr.ttl=0 -DLISTEN_ADDRESS=wsx
-test-vm-dtcp-1.managed.com -Djavax.net.ssl.trustStore=/tech/tomcat/props/ldapstore.ts -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxre
mote.host=wsx-test-vm-dtcp-1 -Dcom.sun.management.jmxremote.port=25000 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.auth
enticate=true -Dcom.sun.management.jmxremote.password.file=/tech/tomcat/props/jr-password.properties -Dcom.sun.management.jmxremote.access.file=/tec
h/tomcat/props/jr-access.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/tech/tomcat/apache-tomca
t-7.0.16/endorsed -classpath /tech/tomcat/apache-tomcat-7.0.16/bin/bootstrap.jar:/tech/tomcat/apache-tomcat-7.0.16/bin/tomcat-juli.jar -Dcatalina.ba
se=/tech/tomcat/instances/testplatform -Dcatalina.home=/tech/tomcat/apache-tomcat-7.0.16 -Djava.io.tmpdir=/tech/tomcat/instances/testplatform/te
mp org.apache.catalina.startup.Bootstrap start