java.lang.OutOfMemoryError错误解决方法

今天在运行项目时出现了java.lang.OutOfMemoryError: PermGen space Exception in thread "ContainerBackgroundProcessor....

随后查了下要 设置MaxPermSize的大小,原因是加载项太多,jvm最大非堆内存的大小不够,默认是物理内存的1/4。

我使用的是MyEclipse 2014.

java.lang.OutOfMemoryError错误解决方法_第1张图片

选择Window-Perferences-MyEclipse-Servers-Tomcat X.x(当前Tomcat版本)

java.lang.OutOfMemoryError错误解决方法_第2张图片

在Optional program arguments: 栏中输入-Xmx256M -Xms256M -XX:MaxPermSize=256M
256M可以自行调整,如果调整后重启Tomcat中出现

Exception loading sessions from persistent storage

这个错误,就到

java.lang.OutOfMemoryError错误解决方法_第3张图片

C:\apache-tomcat-7.0.65\work\Catalina\localhost(x:\apache-tomcat-7.0.65\work\Catalina\localhost)目录下找到你的工程,然后删除。

不够这也是解决一时之忧,有位大神提的:建议做一下压力测试,然后使用内存查看工具分析一下到底哪些class加载得太多了。

 

我先暂时吧问题解决了,优化等后面在写吧。

 

不过我后面又实验了一次,只是吧tomcat下面\Catalina\localhost 下面的哪个工程删除了,然后取消了-Xmx256M -Xms256M -XX:MaxPermSize=256M




你可能感兴趣的:(java)