eclipse 下调试和运行,往往会出现调整java.lang.OutOfMemoryError: Java heap space
产生的原因我猜测是使用了maven,subversion,mylar,wtp等插件,还有就是大文件,对象的操作导致,具体原因还不确定。
在网上找了找相关资料,找到了解决办法:方法(1)操作后没有起作用,不过可以参考其中查看内存的技巧 .具体解决看方法(2),(3)
一 、在eclipse根目录,找到eclipse.ini,在其中指定初始heap
size和最大heap size:
-xms 64M
-xmx
256M
其中, -xms是初始heap size, -xmx 是最大heap
size。
在实际使用过程中,我发现我一启动eclipse时,heap
size使用大概是40m,多时可以达到128m,所以我的设置是
-xms
64m
-xmx 128m
对于permgen space:
在eclipse.ini中指定参数:
-permsize
256m
-maxpermsize
784m
二 、修改jdk 使用内存(此方法可行)
找到eclispe 中window->preferences->Java->Installed JRE ,点击右侧的Edit
按钮,在编辑界面中的 “Default VM Arguments ”选项中,填入如下值即可。
-Xms64m -Xmx128m
三、 修改Run Configurations (此方法可行)
在代码上右键,依次点击“Run As ”-> “Run Configurations ”,在Arguments 参数中的“VM arguments:
”中填入如下值即可。
-Xms64m -Xmx128m
四、 查询当前JVM 内存代码
下面是查询当前JVM 内存大小的代码,可以测试以上设置后JVM 的内存是否会变化。增加JVM 内存的配置项后,无需重新启动eclipse
。具体的代码如下:
public class TestMemory {
public static void main(String[] args) {
System. out .println( " 内存信息 :" + toMemoryInfo ());
}
public static String toMemoryInfo() {
Runtime currRuntime = Runtime.getRuntime ();
int nFreeMemory = ( int ) (currRuntime.freeMemory() / 1024 /
1024);
int nTotalMemory = ( int ) (currRuntime.totalMemory() / 1024 /
1024);
return nFreeMemory + "M/" + nTotalMemory + "M(free/total)" ;
}
}
也可以把工程发布成war包部署到存在管理控制台host-manager的tomcat下.进入控制台选择status查看内存的使用情况.
设置好了,实际运行的结果可以通过Eclipse中“Help”-“About Eclipse SDK”窗口里面的“Configuration Details”按钮进行查看。还有一个办法可以在eclipse中看到当前heap size的分配和使用情况,还可以强制执行垃圾回收。
在eclipse的快捷方式上点击右键,在目标栏添加参数:
-debug
options -vm
javaw.exe
然后,在eclipse根目录下,新建一个名为options的文件,不要后缀名。在该文件中加入内容:
org.eclipse.ui/perf/showHeapStatus=true
重启eclipse,就可以在eclipse的左下角看到当前heap
size的使用情况和分配情况了,还可以手工执行垃圾回收,看heap size不够时就来一次。
分享到:
相关推荐
在IT行业中,开发Java Web应用通常需要三个核心组件:JDK(Java Development Kit)、Tomcat(一个流行的Java Servlet容器)和Maven(项目管理和构建工具)。这个名为"jdk+tomcat+maven"的压缩包文件显然是为了提供一...
3. **配置Eclipse中的Tomcat JVM参数**:在Eclipse中进一步配置Tomcat的JVM参数,通过`Preferences -> Tomcat -> JVM Settings`,选择`Append to JVM Parameters`选项,并添加`-Xms512m -Xmx1024m -Dcom.sun....
在Linux操作系统中搭建Java开发环境,通常涉及到几个关键组件的安装和配置,包括JDK(Java Development Kit)、Tomcat(一个流行的Java应用服务器)、Eclipse(一个强大的Java集成开发环境)以及MySQL(一种广泛使用...
在实际部署中,可以对JVM进行参数调整,如设置堆内存大小(`-Xms`和`-Xmx`),开启垃圾收集优化(例如G1垃圾收集器),以及启用JMX(Java Management Extensions)进行远程监控。 总结来说,JDK 1.6 64位和Tomcat ...
总结来说,JVM远程断点调试是通过JDWP在Eclipse等IDE中实现的,允许开发者在不影响线上服务的情况下,对远程服务器上的Java应用进行实时调试,极大地提升了开发效率和问题排查能力。对于Tomcat这样的服务器,通过...
在开发Java Web应用程序时,开发者会使用IDE(如IntelliJ IDEA或Eclipse)创建和编译Java源代码,然后将结果部署到Tomcat的webapps目录下。Tomcat会自动检测到新的应用并启动它。通过访问Tomcat的管理界面(如...
【装机文档】是开发人员在安装和配置开发环境时的重要参考,本文档详细记录了JDK、Tomcat、Eclipse和MySQL的安装步骤,旨在帮助开发者避免安装过程中的常见误解。 **一、安装JDK1.4** 1. **下载JDK1.4**:从官方...
另外,如果你是在开发环境中,可能还需要配置IDE(如Eclipse, IntelliJ IDEA)的Java和Tomcat设置,确保它们指向正确的JDK和Tomcat实例。 总结来说,配置JDK和Tomcat的环境变量是Java开发的基础工作,只有正确配置...
标题中的“tomcat jdk堆大小配置及eclipse中设置”涉及到的是Java应用程序服务器Tomcat与Java Development Kit (JDK)的内存管理,特别是关于Java虚拟机(JVM)堆内存的配置。在运行大型或者资源密集型的Web应用时,...
如果你是在Eclipse集成开发环境中通过内置的Tomcat插件来启动Tomcat服务,可以在Eclipse的配置界面中直接设置JVM参数: 1. 打开Eclipse,依次选择“Window”>“Preferences”>“Tomcat”>“JVM Settings”。 2. 在弹...
总的来说,配置eclipse+tomcat环境涉及多个环节,包括JDK的安装、Tomcat的解压与配置、eclipse的JRE设置以及Tomcat服务器的配置。每个环节都需要仔细操作,确保路径正确,才能使整个环境顺利运行。在实际开发过程中...
### 安装配置JDK+Tomcat+Eclipse 成功配置JSP开发环境 #### 一、JDK的安装与配置 在配置JSP开发环境的过程中,第一步是安装Java开发工具包(JDK)。JDK是Java开发的基础,包含了Java运行环境(JRE)、Java虚拟机...
1. **JDK (Java Development Kit)**:这是开发Java应用程序的基础,它包含了Java编译器、JVM(Java虚拟机)和其他开发工具。这里指定的是JDK1.5,但为了跟上技术发展,建议至少使用JDK 8或更高版本。 2. **Tomcat**...
2. **解压缩插件**: 将下载的 `TomcatPluginV31.zip` 解压缩至 `D:\eclipse-plugins\tomcat\eclipse\plugins` 目录下。解压后得到的文件夹如 `com.sysdeo.eclipse.tomcat_3.1.0`。 3. **创建 LINK 文件**: 在 ...
【Ubuntu下配置Java环境】配置Java开发环境在Ubuntu操作系统中是一项基础任务,尤其对于Java开发者而言,正确安装和配置JDK、Eclipse、MyEclipse以及Tomcat等工具至关重要。以下将详细介绍每一步骤。 **一、JDK安装...
通过以上步骤,我们完成了 JDK 5.0、Tomcat 5.0.30、Eclipse 3.1.2 和 MyEclipse 4.1.1 的安装与配置。这些工具组合在一起,可以为我们提供一个完整的 Java Web 开发环境。在后续的开发过程中,还需要进一步熟悉这些...