eclipse中设置JVM内存

 初学者非常容易混淆eclipse.ini文件的作用,这个文件 是 eclipse 软件的 配置文件,配置了eclipse 启动,eclipse是用Java写的,只不过用的IBM自己的SWT (Standard Widget Toolkit是一个开源的GUI编程框架,与AWT/Swing有相似的用处而已),这里设置的最小内存和最大内存是留给启动eclipse程序的那个虚拟机使用的,我们要修改eclipse中java程序的JVM内存大小这里设置是不起作用的。


以下提供两种方法:

一、   修改jdk 使用内存

  找到eclispe 中window->preferences->Java->Installed JRE ,点击右侧的Edit 按钮,在编辑界面中的 “Default VM Arguments ”选项中,填入-Xms64m -Xmx128m 即可,具体如下图:

这里的设置影响整个exlipse中的工程的java虚拟机的内存。


  二、修改Run Configurations

1.在代码上右键,依次点击“Run As ”-> “Run Configurations ”,在Arguments 参数中的“VM arguments: ”中填入如下值即可。

-Xms64m -Xmx128m

2.从工程中设置

  右键单击工程,选择properties->Java Editor->Run/Debug Settings->双击工程主程序。即弹出配置编辑框:

1和2两种方法是等价


注意:jdk 和Run Configurations两个地方都设置了的话,起作用的是Run Configurations,相当于父子继承关系,子类覆盖了父类的配置



三、查询当前JVM 内存代码

下面是查询当前JVM 内存大小的代码,可以测试以上设置后JVM 的内存是否会变化。增加JVM 内存的配置项后,无需重新启动eclipse 。具体的代码如下:

[java]  view plain  copy
  1. public class TestMemory {   
  2.     
  3.     /**  
  4.       * @param args  
  5.       */   
  6.     public static void main(String[] args) {   
  7.        System. out .println( " 内存信息 :" + toMemoryInfo ());   
  8.     }   
  9.     
  10.     /**  
  11.       * 获取当前 jvm 的内存信息  
  12.       *  
  13.       * @return  
  14.       */   
  15.     public static String toMemoryInfo() {   
  16.     
  17.        Runtime currRuntime = Runtime.getRuntime ();   
  18.        int nFreeMemory = ( int ) (currRuntime.freeMemory() / 1024 / 1024);   
  19.        int nTotalMemory = ( int ) (currRuntime.totalMemory() / 1024 / 1024);   
  20.        return nFreeMemory + "M/" + nTotalMemory + "M(free/total)" ;   
  21.     }   
  22. }  

猜你喜欢

转载自blog.csdn.net/bingguang1993/article/details/79628618