"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
相关推荐
本文将详细介绍Eclipse内存溢出的原因及具体的解决办法。 #### 一、内存溢出的基本概念 在Java应用中,“内存溢出”通常指的是Java虚拟机(JVM)在运行过程中,因为可用内存空间不足而引发的一种错误。这种错误...
### Eclipse 内存溢出解决办法详解 #### 一、PermGen Space 概念与问题成因 在Java虚拟机(JVM)中,PermGen Space(Permanent Generation Space)是专门用于存储Class和Meta信息的一个区域。当一个Class被加载到...
本文将深入解析Eclipse内存溢出的原因、表现形式以及如何通过调整JVM参数来有效解决此问题。 ### 一、内存溢出的基本概念 内存溢出是指程序运行时,申请的内存超过了系统所能分配的最大内存空间,导致程序无法继续...
在了解如何解决内存溢出之前,我们先来了解一下导致Eclipse内存溢出的原因: 1. **项目规模过大**:当项目的代码量和资源文件非常多时,Eclipse需要消耗更多的内存来加载这些文件。 2. **缓存和临时文件积累**:...
然而,在使用过程中,用户可能会遇到“eclipse内存溢出报错”的问题,这一现象通常表现为Java.lang.OutOfMemoryError: Java heap space错误,这主要源于Eclipse运行时分配给Java虚拟机(JVM)的内存不足,导致程序...
### Eclipse内配置处理内存溢出 #### 背景与问题概述 在使用Eclipse进行Java开发时,可能会遇到应用程序运行过程中出现“OutOfMemoryError”(内存溢出错误)。这类错误通常发生在Java虚拟机(JVM)无法为新对象...
### Eclipse内存溢出问题解析与解决方案 #### 一、内存溢出概述 内存溢出(Memory Leak)是指程序运行过程中使用的内存超过系统所能提供的最大内存限制时所出现的问题。这种情况通常发生在Java等需要进行垃圾回收...
eclipse开发中,如果导入的jar包过多,很容易出现内存溢出
解决Eclipse内存溢出问题的步骤如下: 1. 找到Eclipse的启动配置文件,通常是`eclipse.ini`,位于Eclipse安装目录下。 2. 在`eclipse.ini`文件中,找到`-vmargs`行,接着在其下方添加内存参数。按照你的工程需求,...
### Tomcat与Eclipse配置内存溢出解决方案 #### 背景介绍 在进行Web应用程序开发过程中,尤其是在使用Tomcat服务器结合Eclipse或MyEclipse等集成开发环境(IDE)时,开发者可能会遇到一个常见的问题——内存溢出。...
### Eclipse Tomcat 启动时出现内存溢出问题解析及解决方法 #### 一、问题背景与概述 在使用Eclipse集成开发环境部署并运行基于Tomcat的应用程序时,经常会出现“java.lang.OutOfMemoryError: Java heap space”这...
#### 二、内存溢出的原因及处理思路 ##### 2.1 内存泄露 - **定义**:内存泄露是指不再使用的对象仍然占据内存空间,且无法通过垃圾回收机制释放,导致可用内存逐渐减少直至耗尽。 - **识别**:通过 MAT 工具的 `...
### Eclipse + Tomcat 内存溢出参数设置详解 在Java开发过程中,特别是在使用Eclipse作为集成开发环境(IDE)并结合Apache Tomcat服务器进行Web应用开发时,经常会遇到内存溢出的问题。这类问题通常表现为应用程序...
对于使用Eclipse IDE并安装了m2eclipse插件的用户来说,可以通过IDE内部配置来解决内存溢出问题。具体步骤如下: 1. **创建新配置**:在项目上右键点击,选择“Run As” -> “Run Configurations”,然后在“Maven ...
### Java Excel导出Tomcat内存溢出处理方法 在Java应用开发过程中,特别是在进行大量数据处理如Excel导出等操作时,经常会遇到Tomcat服务器内存溢出的问题。内存溢出是指程序运行时申请的内存超过了系统能提供的...
同时,堆内存大小不应超过物理内存的80%,以确保系统有足够的资源处理其他进程。 总结来说,解决MyEclipse内存溢出问题需要理解Java内存模型和JVM参数设置,合理分配堆内存、新生代和永久代的大小。通过监控和调整...
为了有效解决Eclipse内存不足的问题,可以通过修改Eclipse的启动参数来增加分配给JVM的内存大小。具体操作步骤如下: 1. **定位Eclipse.ini文件**:首先找到Eclipse的安装目录下的`eclipse.ini`文件。这个文件控制...
Eclipse是一个功能强大且广泛使用的集成开发环境(IDE),但是,如果不正确地设置其运行内存,可能会导致内存溢出错误。因此,正确地设置Eclipse的java内存是非常重要的。本文将详细介绍如何设置Eclipse的java内存,...
eclipse(wtp)内存溢出解决办法 修改配置文件