多个项目MyEclipse中启动出现OutOfMemoryError: PermGen space如何解决

  在MyEclipse中启动程序运行,报错java.lang.OutOfMemoryError: PermGen space应该怎么办?这是eclipse 内存不够的原因。

  PermGen space的全称是Permanent Generation space,是指内存的永久保存区域, 这块内存主要是被JVM存放Class和Meta信息的,Class在被Loader时就会被放到PermGen space中, 它和存放类实例(Instance)的Heap区域不同,GC(Garbage Collection)不会在主程序运行期对 PermGen space进行清理,所以如果你的应用中有很多CLASS的话,就很可能出现PermGen space错误, 这种错误常见在web服务器对JSP进行pre compile的时候。如果你的WEB APP下都用了大量的第三方jar, 其大小超过了jvm默认的大小(4M)那么就会产生此错误信息了。

  一、手动设置MaxPermSize大小修改TOMCAT_HOME/bin/catalina.bat(windows系统)或者catalina.sh(unix系统)在“echo "Using CATALINA_BASE: $CATALINA_BASE"”上面加入以下行:set JAVA_OPTS=%JAVA_OPTS% -server -XX:PermSize=256M -XX:MaxPermSize=512m

  二、如果启动Tomcat的时候是通过MyEclipse启动服务器的话,需要在MyEclipse里面同样设置内存大小

  在Tomcat中解决方法: 手动设置MaxPermSize大小修改TOMCAT_HOME/bin/catalina.sh 在“echo "Using CATALINA_BASE: $CATALINA_BASE"”上面加入以下行: JAVA_OPTS="-server -Xms256m -Xmx256m -XX:MaxNewSize=256m -XX:MaxPermSize=256m"

时间: 2024-10-25 07:15:20

多个项目MyEclipse中启动出现OutOfMemoryError: PermGen space如何解决的相关文章

MyEclipse10中启动出现OutOfMemoryError: PermGen space如何解决

一篇关于技术的文档,分享给大家.在MyEclipse中启动程序运行,报错java.lang.OutOfMemoryError: PermGen space应该怎么办?这是eclipse 内存不够的原因. PermGen space的全称是Permanent Generation space,是指内存的永久保存区域, 这块内存主要是被JVM存放Class和Meta信息的,Class在被Loader时就会被放到PermGen space中, 它和存放类实例(Instance)的Heap区域不同,GC

OutOfMemoryError PermGen space 的解决办法(头痛了几天)

解决 OutOfMemoryError: PermGen space ,过程是痛苦的,结果是舒畅的 最近自己的程序在 Redeploy 重新部署的时候,老提示 OutOfMemoryError: PermGen space 错误,在网络上搜索了相关的资料,但是按照做后还是存在这个问题.由 于我是第一次碰到这个问题, 花费了我 2 天时间, 过程比较痛苦, 结果还是比较 圆满的.我将我的经历写下来,供我自己以后参考,也提供给大家分享. 在网络上关于 OutOfMemoryError: PermGe

OutOfMemoryError: PermGen space的解决方法

MyEclipse中启动Tomcat,报OutOfMemoryError: PermGen space的解决方法 发表于 2012 年 7 月 27 日 这是个很简单的问题,但是搜索了半天,发现大家写博客的时候太不认真,很多人很不严谨,会误导大家.这里自己再总结一下: 1. 如果是单独启动Tomcat报错,可以这样修改catalina.bat文件(假设在Windows中): 在"rem -– Execute The Requested Command -------------"这一行

MyEclipse6.5通过Jetty跑Web应用时提示OutOfMemoryError: PermGen space的解决办法

/** * MyEclipse6.5通过Jetty跑Web应用时提示OutOfMemoryError: PermGen space的解决办法 * @see --------------------------------------------------------------------------------------------------- * @see Jetty启动类-->Run AS-->Open Run Dialog-->Arguments-->VM argum

myEclipse开发内存溢出解决办法myEclipse调整jvm内存大小java.lang.OutOfMemoryError: PermGen space及其解决方法

摘要: tomcat部署多个项目后,启动tomcat正常,访问项目时却会出现该错误在网上查了查又试了好几次,才解决,将解决方法记录下来,以方便以后查看或让遇到同样问题的朋友有个参考 PermGen space是啥就不说了,网上找找大堆,感觉也没必要记这些个概念 问题的根源就是JVM的内存不够用了!!!解决方法: *********************************************************************************************

Web项目java.lang.OutOfMemoryError: PermGen space异常解决

接手一个新的Web项目,编译运行(Tomcat版本为7),运行的时候报出了java.lang.OutOfMemoryError: PermGen space的异常,搜了一下这样解释: PermGen space的全称是Permanent Generation space,是指内存的永久保存区域. 为什么会内存溢出,这是由于这块内存主要是被JVM存放Class和Meta信息的,Class在被Load的时候被放入PermGen space区域,它和存放Instance的Heap区域不同,sun的 G

java.lang.OutOfMemoryError: PermGen space从解决方法中认识堆与非堆

1)堆(Heap)和非堆(Non-heap)内存 按照官方的说法:“Java 虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配.堆是在 Java 虚拟机启动时创建的.”“在JVM中堆之外的内存称为非堆内存(Non-heap memory)”. 可以看出JVM主要管理两种类型的内存:堆和非堆.简单来说堆就是Java代码可及的内存,是留给开发人员使用的:非堆就是JVM留给自己用的, 所以方法区.JVM内部处理或优化所需的内存(如JIT编译后的代码缓存).每个类结构(如运行时常

myeclipse tomcat java.lang.OutOfMemoryError: PermGen space错误的解决方法

错误代码: java.lang.OutOfMemoryError: PermGen space 原因分析: myeclipse或tomcat的内容分配的不够用,启动失败 解决方法: 1.找到tomcat安装目录的这个文件\apache-tomcat-7.0.41\bin\catalina.bat,打开,在里面找到这句:rem ----- Execute The Requested Command .在这句下面添加:set JAVA_OPTS=%JAVA_OPTS% -Xms256m -Xmx10

java.lang.OutOfMemoryError: PermGen space及其解决方法

PermGen space的全称是Permanent Generation space,是指内存的永久保存区域OutOfMemoryError: PermGen space从表面上看就是内存益出,解决方法也一定是加大内存.说说为什么会内存益出:这一部分用于存放Class和Meta的信息,Class在被 Load的时候被放入PermGen space区域,它和和存放Instance的Heap区域不同,GC(Garbage Collection)不会在主程序运行期对PermGen space进行清理