Exception in thread ""http-bio-8080"-exec-1" java.lang.OutOfMemoryError: PermGen space
Exception in thread "Druid-ConnectionPool-Destory" java.lang.OutOfMemoryError: PermGen space
        at java.util.IdentityHashMap.keySet(IdentityHashMap.java:935)
        at com.alibaba.druid.pool.DruidDataSource.removeAbandoned(DruidDataSource.java:1312)
        at com.alibaba.druid.pool.DruidDataSource$DestroyConnectionThread.run(DruidDataSource.java:1294)
Exception in thread "ContainerBackgroundProcessor[StandardEngine[Catalina]]" 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进行清理,所以如果你的APP会LOAD很多CLASS的话,就很可能出现PermGen space错误。这种错误常见在web服务器对JSP进行pre compile的时候。 改正方法:-Xms256m -Xmx256m -XX:MaxNewSize=256m -XX:MaxPermSize=256m

一、修改Eclipse 启动参数
  直接右键eclipse的快捷方式,在"目标"中填入下行
  D:\eclipse
\eclipse.exe -debug options -vm javaw.exe -nl zh_CN -clean -vmargs
-Xverify:none -XX:+UseParallelGC -XX:PermSize=20M -XX:MaxNewSize=32M
-XX:NewSize=32M -Xms128m -Xmx1024m
  参数注解:
  【-debug options -vm javaw.exe】 显示JVM当前内存使用量(注:详见下方《让你的eclipse也能显示JVM当前内存使用量》)
  【-nl】后面跟的是语言:英语 en_US 简体中文 zh_CN
  【-clean 】是当启动Eclipse IDE时清空缓冲,一般来说在没有更新插件的情况下,去掉这个参数启动速度更快。
  【-vmargs】使用JRE的参数,后面就是JRE的参数了:
  【-Xverify:none】去掉JAR包数据验证,一般来说只有在网络环境下才需要验证JAR包数据的有效性。本地的话可以不用验证。
  【-XX:+UseParallelGC】使用并行垃圾收集机制,据说这个GC算法比较快。具体不清楚。
  【-XX:PermSize=20M -XX:MaxNewSize=32M -XX:NewSize=32M】这三个就是设置详细的缓冲数据了。详情看Java官方网站的介绍吧。
  【-Xms128m】Java虚拟机初始化内存容量。
  【-Xmx256m】Java虚拟机最大使用内存容量,根据你所使用机器的内容大小设置,只要不超过最大内存容量就好。

二、修改Tomcat

然后在eclipse的server栏,找到tomcat选项,打开tomcat的配置

在arguments 标签框下面的VM Arguments 框后面接上自己的tomcat启动虚拟机参数-Xms128m -Xmx1024m -XX:MaxPermSize=512m 就可以了

java.lang.OutOfMemoryError: PermGen space的更多相关文章

  1. Eclipse中启动tomcat报错java.lang.OutOfMemoryError: PermGen space的解决方法

    有的项目引用了太多的jar包,或者反射生成了太多的类,异或有太多的常量池,就有可能会报java.lang.OutOfMemoryError: PermGen space的错误, 我们知道可以通过jvm ...

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

    PermGen space的全称是Permanent Generation space,是指内存的永久保存区域OutOfMemoryError: PermGen space从表面上看就是内存益出,解决 ...

  3. [转]Tomcat启动java.lang.OutOfMemoryError: PermGen space错误解决

    原文地址:http://outofmemory.cn/java/OutOfMemoryError/outofmemoryerror-permgen-space-in-tomcat-with-eclip ...

  4. 【转载】java项目中经常碰到的内存溢出问题: java.lang.OutOfMemoryError: PermGen space, 堆内存和非堆内存,写的很好,理解很方便

    Tomcat Xms Xmx PermSize MaxPermSize 区别 及 java.lang.OutOfMemoryError: PermGen space 解决 解决方案 在 catalin ...

  5. tomcat 运行程序很慢 运行一段时间就报错: java.lang.OutOfMemoryError: PermGen space

    java.lang.OutOfMemoryError: PermGen space 全称是Permanent Generation space,是指内存的永久保存区域. 由于这块内存主要是被JVM存放 ...

  6. [转]java.lang.OutOfMemoryError: PermGen space及其解决方法

    原文地址:http://peak.iteye.com/blog/52606 这个问题是我的工程中加入了Birt报表在Linux环境下运行出现的问题,从网上搜索了一下看到这文章发现并不是由于Birt的原 ...

  7. Tomcat内存溢出(java.lang.OutOfMemoryError: PermGen space)

    Tomcat启动时报如下错误:     java.lang.OutOfMemoryError: PermGen space 解决办法:     配置相关内存大小.其中按照启动tomcat的不同方式,分 ...

  8. Tomcat Xms Xmx PermSize MaxPermSize 区别 及 java.lang.OutOfMemoryError: PermGen space 解决

    解决方案 在 catalina.bat 里的 蓝色代码前加入: 红色代码 rem ----- Execute The Requested Command ----------------------- ...

  9. java.lang.OutOfMemoryError: PermGen space及其解决方法(转载)

    java.lang.OutOfMemoryError: PermGen space及其解决方法 分类: java2007-09-11 12:34 162242人阅读 评论(51) 收藏 举报 gene ...

随机推荐

  1. ArcGIS初步 系列视频教程

    本人才疏学浅,但鉴于较少的ArcGIS10以上版本的学习视频,所以利用业余时间做了这么个业余的视频系列教程,本随笔提供在线观看地址与720P原版下载地址. 1认识ArcGIS 优酷在线地址  (优酷清 ...

  2. [LintCode] Pow(x, n) 求x的n次方

    Implement pow(x, n). Notice You don't need to care about the precision of your answer, it's acceptab ...

  3. 前端相关js

    1. mailchimp.js: 通过电子邮件订阅 RSS 的在线工具 2. ga.js:google推出的用来统计网站信息的一个java脚本.可以在GoogleAnalytics获得网站的统计和追踪 ...

  4. NumberUtils.java

    package com.vcredit.ddcash.batch.util; import java.math.BigDecimal; public class NumberUtils { /** * ...

  5. IOS第15天(3,事件处理,手势处理)

    7> 手势识别    使用UIImageView原因:之前既能看见图片,又能监听点击的只有UIButton,学了手势,我们的UIImageView也可以.    * tap(代理:左边不能点,右 ...

  6. wordpress 导航相关的函数

    上一篇文章.下一篇文章 previous_post_link( $format = '« %link', $link = '%title', $in_same_term = false, $exclu ...

  7. P1311 选择客栈

    开始写了一个O(n3)的算法,只得了60,后来思考(找题解),得到了一个O(nk)的算法 其实就是一种预处理的思想,对于每一个客栈而言,只要我们预处理出他前面可以匹配的客栈数量,就可以了. 所以我们记 ...

  8. angularJs指令执行的机制==大概的三个阶段

    第一阶段:加载阶段 angularJs要运行的话,需要去等待angular.js加载完成,加载完之后呢,angular就会去查找到ng-app这个指令,ng-app在每个应用里面只能出现一次, 它也就 ...

  9. 统一的mvc异常处理

    mvc异常处理 using System; using System.Configuration; using System.Web.Mvc; using Infrastructure.Excepti ...

  10. mvc ajax dropdownlist onchang事件响应

    <script type="text/javascript"> $("#Cycle").on("change", functio ...