简体   繁体   English

如何在FreeBSD上为tomcat设置JAVA_OPTS?

[英]How to set JAVA_OPTS for tomcat on FreeBSD?

I received OutOfMemoryError: PermGen space error. 我收到OutOfMemoryError: PermGen space错误。
I run tomcat using command: 我使用以下命令运行tomcat:

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

I am trying to increase PermGen space ( JAVA_OPTS="-XX:PermSize=256m -XX:MaxPermSize=256m" ). 我正在尝试增加PermGen空间( JAVA_OPTS="-XX:PermSize=256m -XX:MaxPermSize=256m" )。

I tried to add this string to next places: 我试图将此字符串添加到以下位置:

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

But it is no effect. 但这没有效果。 Default Tomcat server status (/manager/status) shows that only 82MB allowed for PS Perm Gen. 默认的Tomcat服务器状态(/ manager / status)显示PS Perm Gen仅允许82MB。

What I did wrong? 我做错了什么?

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)

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

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

I suspect that the server process on the machine is not picking up right Java OPTS. 我怀疑机器上的服务器进程没有正确的Java OPTS。 Please try to find the process on the server and check the parameters being passed. 请尝试在服务器上查找进程并检查传递的参数。

In Linux, its usually be 在Linux中,通常是

ps -ef | ps -ef | grep tomcat grep Tomcat
or ps -ef | 或ps -ef | grep java grep Java

to find out the process and verify the JVM parameters. 查找过程并验证JVM参数。

Edit 1: the is a sample output of the command to find process, which might indicate the java opt parameter values: 编辑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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM