"java.lang.OutOfMemoryError:Java PermGen space " ,oh my god!
"java.lang.OutOfMemoryError: Java heap space" oh my god angin!
今天就彻底干掉内存溢出的问题。
方法一:修改tomcat配置:
TOMCAT_HOME/bin/catalina.bat(Linux上为catalina.sh)文件,在
echo Using CATALINA_BASE:上面加入这一行内容:(4G内存为例)
set JAVA_OPTS=%JAVA_OPTS% -server -XX:PermSize=512m -XX:MaxPermSize=1024m
参考地址:http://woo-program.iteye.com/blog/1243613 (实际验证过)
方法二:修改ECLIPSE配置
更改ECLIPSE文件夹下的ECLIPSE.INI文件内容如下:
-vmargs
-Xms128m
-Xmx512m
-XX:PermSize=64m
-XX:PermSize=128m
或者:
在eclipse目录下建个批处理文件eclipse.bat,用文本编辑器打开,写入如下内容:
eclipse.exe -vmargs -Xms128m -Xmx512m -XX:PermSize=128m -XX:PermSize=256m
然后保存.以后运行eclipse的时候就执行这个批处理就行了.
解释下参数的意思:
-vmargs 说明后面的参数都是java虚拟机(vm)的参数
-Xms128m 虚拟机占用系统的最小内存
-Xmx512m 虚拟机占用系统的最大内存
-XX:PermSize=64m 最小堆大小.一般报内存不足时,都是说这个太小,堆空间剩余小于5%就会警告,建议把这个稍微设大一点,不过要视自己机器内存大小来设置
-XX:PermSize=128m 最大堆大小.这个也适当边大些
或者:
修改启动Eclipse的快捷方式为:
D:\javaDevelop\eclipse\eclipse.exe -vmargs -Xms128m -Xmx512m -XX:PermSize=128m -XX:PermSize=256m
以上摘自:http://blog.sina.com.cn/s/blog_4c17eecb01000ako.html
自我实战:
找到tomcat的VM arguments(Preferences>Tomat>JVM Settings),然后粘贴:
-Xms256m -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=512m(推荐)
-- Xms和XX:PermSize 表示初始化大小,Xmx和MaxPermSize表示最大值,占用内存会从初始化开始递增,直到最大值,然后报内存溢出。
-- 默认为:
后来我改成:
-Xms256m -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=1024m,
报错,tomcat无法启动,应该是设置的内存超出了我本机的内存(本机2G),然后我改成了了:
-XX:PermSize=256m -XX:MaxPermSize=1024m
启动tomcat,正常了。
以下摘自:http://it.100xuexi.com/view/otdetail/20120517/4f4f95b4-682c-4c7b-9417-fb88afbb6190.html
4G内存推荐配置:
-Xms256m -Xmx1024m -XX:PermSize=512m -XX:MaxPermSize=512m
相关推荐
2. **MAT (Memory Analyzer Tool)**:Eclipse 提供的专门用于分析Java堆内存的工具,它能帮助开发者定位内存泄漏的具体对象和引用链。MAT的 Leak Suspects 报告和 Dominator Tree 功能特别适用于发现潜在的内存泄露...
### Java.lang.OutOfMemoryError:Java Heap Space 错误及处理办法 在Java应用程序开发与维护过程中,经常会遇到`java.lang.OutOfMemoryError: Java heap space`这一异常情况。该异常通常表明Java虚拟机(JVM)的堆...
- 如果使用的是JDK 1.6.0_21及后续版本,可能在启动Eclipse时遇到内存溢出问题。解决方案是在`eclipse.ini`文件中添加`-XX:MaxPermSize=256m`行。 - 启动Eclipse后,通过“Windows -> Preferences”路径找到Tomcat...
- 如果是Web项目存在内存溢出的情况,可以考虑增加Tomcat的内存分配。主要修改Tomcat安装目录下bin文件夹中的catalina.bat文件,找到SETJAVA_OPTS这一行,修改相应的内存参数: ``` set JAVA_OPTS=-Xms1024m -Xmx...
- **问题:** Java内存溢出 - **原因:** 当应用程序使用的内存超过了JVM分配的最大值时,会出现此错误。 - **解决方法:** 调整JVM的内存参数。可以在Tomcat的启动脚本中添加如下参数:`-Xms512M -Xmx1024M -XX:...
然而,它的主要缺点是生成的JAR文件可能非常大,可能导致内存溢出问题,尤其是在DOS环境下运行。此外,过多的库可能导致类冲突。 2. **直接用MyEclipse的Export导出JAR包** MyEclipse的直接导出功能生成的JAR文件...
问题描述:在Eclipse中使用Tomcat启动项目时,可能会遇到内存溢出错误。 **解决方法:** - 调整JVM参数以增加内存分配。 - 在Eclipse中打开Run Configurations,找到VM arguments部分。 - 输入以下参数并保存: ``...