Permgen을 128m 이상으로 설정할 때 Sun JVM이 초기화되지 않는 이유는 무엇입니까?

StackOverflow https://stackoverflow.com/questions/1010986

  •  06-07-2019
  •  | 
  •  

문제

내 영구를 늘려야합니다. 현재 다음을 명령 줄 매개 변수로 전달합니다.

-XX:PermSize=128m -XX:MaxPermSize=128m

이것은 작동합니다. 그러나 값을 높이려고하면 JVM이 초기화되지 않아이 오류가 발생합니다.

[2009-06-18 01:39:44] [info] Error occurred during initialization of VM [2009-06-18 01:39:44] [info] Could not reserve enough space for object heap [2009-06-18 01:39:44] [info] [2009-06-18 01:39:44] [395 javajni.c] [error] CreateJavaVM Failed

구체적으로, 나는 부팅하려고합니다 수코양이 포함 JRE6, 그러나 나는 이것이 중요하지 않다고 생각합니다.

편집하다: 2GB RAM으로 Win2K3 VM 이미지를 실행하고 있습니다. 나는 그것을 사용하여 JVM을 부팅한다 Tomcat을 모니터링하십시오 다음 매개 변수가있는 응용 프로그램 :

초기 메모리 풀 : 1024, 최대 메모리 풀 : 1536

-XX:PermSize=128m -XX:MaxPermSize=128m -XX:+CMSPermGenSweepingEnabled -XX:+CMSClassUnloadingEnabled -XX:+UseConcMarkSweepGC -Dcatalina.home=C:\Program Files\Apache Software Foundation\Tomcat 6.0 -Dcatalina.base=C:\Program Files\Apache Software Foundation\Tomcat 6.0 -Djava.endorsed.dirs=C:\Program Files\Apache Software Foundation\Tomcat 6.0\endorsed -Djava.io.tmpdir=E:\tomcat\temp -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file=C:\Program Files\Apache Software Foundation\Tomcat 6.0\conf\logging.properties

도움이 되었습니까?

해결책

Perm Gen은 힙에 부가가치이므로 프로세스를 확인하십시오. 2G를 1.5 GB 이상으로 사용할 수 있어야합니다.

다른 팁

-xmx512m로 더 큰 힙을 제공하십시오 (이것은 512MB를 줄 것입니다).

다른 메모리 매개 변수를 사용하십니까? 컴퓨터에 얼마나 많은 메모리가 있습니까? 32 비트 또는 64 비트 기계를 사용하고 있습니까?

2GB의 메모리가 있고 설정 -xmx1024m -xx : permsize = 512m -xx : maxpermsize = 512m로 tomcat을 실행합니다. 이것은 일반적으로 잘 실행됩니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top