티스토리 뷰

http://wiki.eclipse.org/FAQ_How_do_I_increase_the_permgen_size_available_to_Eclipse%3F

If you see java.lang.OutOfMemoryError: PermGen space errors, you need to increase the permanent generation space available to Eclipse.

PermGen is the permanent generation of objects in the VM (Class names, internalized strings, objects that will never get garbage-collected). An easy, if somewhat memory-hungry fix is to enlarge the maximum space for these objects by adding

eclipse [normal arguments] -vmargs -XX:PermSize=64M -XX:MaxPermSize=128M [more VM args]

The arguments after -vmargs are directly passed to the VM. Run java -X for the list of options your VM accepts. Options starting with -X are implementation-specific and may not be applicable to all VMs.

You can also put the extra options in eclipse.ini.

Eclipse 3.3 and Sun VMs on Windows

Eclipse 3.3 supports a new argument to the launcher: --launcher.XXMaxPermSize. On Windows, Eclipse 3.3 ships with the following lines in the eclipse.ini file:

--launcher.XXMaxPermSize
256m

With the above arguments, if the VM being used is a Sun VM and there is not already a -XX:MaxPermSize= VM argument, then the launcher will automatically add -XX:MaxPermSize=256m to the list of VM arguments being used. The 3.3 launcher is only capable of identifying Sun VMs on Windows.

Note: Eclipse 3.3.1 has a bug where the launcher cannot detect a Sun VM, and therefore does not use the correct PermGen size. It seems this may have been a known bug on Mac OS X for 3.3.0 as well. If you are using either of these platform combinations, add the -XX flag to the eclipse.ini as described above.

The best way to really eliminate PermGen problems is to run Eclipse against non-Sun JVM, e.g. IBM J9 and BEA WebRockit. Note that while "normal" download of Windows version of IBM JVM is intended only for upgrade of old IBM computers, IBM site contains special distribution of Eclipse prepackaged with IBM JVM. You may use thisdistribution directly of extract JVM from it. Note that you need not install the same JVM int JRE list inside Eclipse if you do not wish to,

요약. XXMaxPermSize를 조정하여 올린다. 썬 자바는 윈도우 상에서 버그 있으니 딴 VM 쓰던가 다른 옵션으로 이클립스를 기동한다.

리눅스 개발 환경과 윈도우 개발환경을 왕복 하는 나로써는 상당히 짜증났던 일이었다. 그로인해 VMWARE 에서 리눅스 설치하여 ECLIPSE 환경으로 개발하는 일도 벌였다. 기본적인 동작 환경이 리눅스이니 별 문제는 없지만 이제까지 집에 들고와서 해도 가능한 일을 회사 출근까지 하면 한것은 미칠 노릇이었음....