在Myeclipse中使用Tomcat7.0出现异常,说是java.lang.OutOfMemoryError: PermGen space异常,大家出现过这个问题吗?怎么解决?

空云万里晴 发布于 2012/02/19 18:22
阅读 2K+
收藏 1

在Myeclipse中使用Tomcat7.0出现异常,说是java.lang.OutOfMemoryError: PermGen space异常,大家出现过这个问题吗?怎么解决?

一下是异常信息:

 

信息: Deploying web application directory StrutsHibernatAddBook
java.lang.OutOfMemoryError: PermGen space
 at java.lang.ClassLoader.defineClass1(Native Method)
 at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
 at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
 at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2820)
 at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1150)
 at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645)
 at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1523)
 at org.apache.catalina.startup.ContextConfig.checkHandlesTypes(ContextConfig.java:2006)
 at org.apache.catalina.startup.ContextConfig.processAnnotationsStream(ContextConfig.java:1969)
 at org.apache.catalina.startup.ContextConfig.processAnnotationsJar(ContextConfig.java:1858)
 at org.apache.catalina.startup.ContextConfig.processAnnotationsUrl(ContextConfig.java:1826)
 at org.apache.catalina.startup.ContextConfig.processAnnotations(ContextConfig.java:1812)
 at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1306)
 at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:896)
 at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:322)
 at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
 at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
 at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5103)
 at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:148)
 at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:812)
 at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:787)
 at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:607)
 at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1055)
 at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:978)
 at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:472)
 at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1329)
 at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
 at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
 at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
 at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:389)
 at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:334)
 at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1041)

加载中
0
demon
demon

内存溢出,设置的jvm 内存太小,设置的话,相关参数可以上网找找。

0
空云万里晴
空云万里晴
找过了,但对7.0好像不管用。
0
乱世键客
乱世键客

catalina.bat中加入下面一行:

rem Set JAVA_OPTS for performance tuning
if "%JAVA_OPTS%" == "" set JAVA_OPTS=%JAVA_OPTS% -Djava.awt.headless=true -server -Xms1024m -Xmx1024m -XX:NewSize=512m -XX:MaxNewSize=512m -XX:PermSize=512m -XX:MaxPermSize=512m -XX:+DisableExplicitGC

0
乱世键客
乱世键客
rem Set JAVA_OPTS for performance tuning
if "%JAVA_OPTS%" == "" set JAVA_OPTS=%JAVA_OPTS% -Djava.awt.headless=true -server -Xms1024m -Xmx1024m -XX:NewSize=512m -XX:MaxNewSize=512m -XX:PermSize=512m -XX:MaxPermSize=512m -XX:+DisableExplicitGC
0
空云万里晴
空云万里晴

引用来自“乱世键客”的答案

catalina.bat中加入下面一行:

rem Set JAVA_OPTS for performance tuning
if "%JAVA_OPTS%" == "" set JAVA_OPTS=%JAVA_OPTS% -Djava.awt.headless=true -server -Xms1024m -Xmx1024m -XX:NewSize=512m -XX:MaxNewSize=512m -XX:PermSize=512m -XX:MaxPermSize=512m -XX:+DisableExplicitGC

你用过7.0?在安装目录下没找到catalina.bat文件啊,算了我还是用6.0吧
拉登他哥
拉登他哥
@空云万里晴 : 怎么可能没有哦,7.0.2都有...
iSea
iSea
没有?你的tomcat从哪里下的?
返回顶部
顶部