Eclipse IDEでは、あなたのプログラムが次のように多くのメモリを消費している(大きなデータをロードしている)

  List<Domain> list = domainBo.findAllDomain(100000);

  for(Domain domain : list){
    process(domain.getDomainName());
  }

`java.lang.OutOfMemoryError:Java heap space`を簡単に押すことができます:

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
    at java.util.HashMap.<init>(HashMap.java:209)
    at java.util.LinkedHashMap.<init>(LinkedHashMap.java:181)

1.ソリューション – VM引数

Eclipseのメニューで

Run→ Run Configurations …​`をクリックし、実行するJavaアプリケーションを選択し、

Arguments`タブをクリックし、VM引数を次のオプションで更新します

-Xms<size> - Set initial Java heap size
-Xmx<size> - Set maximum Java heap size

たとえば、

-Xms512M -Xmx1024M


eclipse-out-of-memory、width = 580、height = 480

2.間違い – eclipse.ini

`eclipse.ini`のメモリ設定は、実行したいプログラムではなく、Eclipse IDEにのみ割り当てられます。非常によくある間違いは、 `eclipse.ini`のヒープサイズを更新し、それがメモリー上の問題を解決することを期待しています。

しかし、Eclipse IDEが何の理由もなく常にクラッシュした場合は、 `eclipse.ini`でヒープサイズとパーマネントを増やすことができます。

/Users/mkyong/Downloads/eclipse/Eclipse.app/Contents/MacOS/eclipse.ini

    -startu
    openFile
    -showsplash
       //...
    -XX:MaxPermSize=512m
    -Xms512m
    -Xmx1024m
       //...
    -Xdock:icon=../Resources/Eclipse.icns
    -XstartOnFirstThread

__P.S eclipse.iniは、Eclipseインストール・フォルダーにあります。

参考文献


  1. http://wiki.eclipse.org/FAQ


    How

    do

    I

    increase

    the

    permgen

    size

    available

    to

    Eclipse%3F[FAQ

Eclipseに利用できるpermgenサイズを増やすにはどうすればよいですか?]。 link://java/find-out-your-java-heap-memory-size/[あなたのJavaを見つける

ヒープメモリサイズ]。リンク://eclipse/eclipse-tomcat-java-lang-outofmemoryerror-java-heap-space/[Eclipse

Tomcat – Java.Lang.OutOfMemoryError:Javaヒープスペース]