【发布时间】:2011-02-12 17:03:36
【问题描述】:
有很多问题会问这个或类似的问题。
他们都给出了必须执行的命令,我不明白我在哪里写这个命令。我想永久增加我的 tomcat 应用程序的堆空间。
我读了这个页面http://javahowto.blogspot.com/2006/06/6-common-errors-in-setting-java-heap.html,它在Tomcat部分下写着
停止Tomcat服务器,设置环境变量CATALINA_OPTS,然后重启Tomcat。查看文件 tomcat-install/bin/catalina.sh 或 catalina.bat 了解如何使用此变量。例如,
设置 CATALINA_OPTS=-Xms512m -Xmx512m(Windows,值周围没有“”)
export CATALINA_OPTS="-Xms512m -Xmx512m" (ksh/bash, "" 围绕值)
setenv CATALINA_OPTS "-Xms512m -Xmx512m" (tcsh/csh, "" 围绕值)
所以我换了行
设置 CATALINA_OPTS=
与
设置 CATALINA_OPTS=-Xms512m -Xmx512m
但我仍然得到错误。
javax.servlet.ServletException: Servlet 执行抛出异常
根本原因
java.lang.OutOfMemoryError:Java 堆空间 java.lang.reflect.Array.multiNewArray(本机方法) java.lang.reflect.Array.newInstance(Array.java:90) nom.tam.util.ArrayFuncs.newInstance(ArrayFuncs.java:1028) nom.tam.fits.ImageData.read(ImageData.java:259) nom.tam.fits.Fits.readHDU(Fits.java:573) controller.UploadServlet.retreiveFITSFileFields(UploadServlet.java:206) 控制器.ScanServerFiles.doPost(ScanServerFiles.java:39) javax.servlet.http.HttpServlet.service(HttpServlet.java:637) javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
【问题讨论】:
-
@laz - 我已经添加了堆栈跟踪
标签: java tomcat heap-memory