Could not reserve enough space for object heap 해결방법

2020. 2. 19. 15:26etc/error

eclipse에서 tomcat 을 사용하여 웹 프로젝트를 기동하는 중 다음과 같은 오류가 발생했다.

Error occurred during initialization of VM
Could not reserve enough space for object heap
Could not create the Java virtual machine

 

해당 오류는 JVM의 메모리 문제이다.

 

공식 사이트에서는 약 7가지의 진단방법을 제공하고 있으나 보통은 아래 3가지중으로 해결이 가능하다.

 

1. -Xmx 가 명시적으로 지정되어있는지 확인 (32 bit or 64 bit JVM)

2. -Xmx 가 너무 크게 설정되어 있는지 확인 (32 bit JVM only)

3. 시스템의 가상 메모리가 부족한지 확인 (32 bit or 64 bit JVM)

출처 : 오라클 지원문서

 

그런데 필자는 잘 되고 있는 eclipse 와 tomcat에서 위와 같은 오류가 발생했다.

 

Xmx 등 메모리 설정은 이미 되어있었고 잘 사용중이고 변동이 없었다.

 

해매는 가운데 의심스러운 것이 있었다.

 

일하는 중간에 보안프로그램을 하나 설치했다.

 

 

 

혹시나 그 프로그램이 Java로 만들어진 것이 아닐까 하는 의심을 품었다.

 

왜냐하면 그 프로그램이 Jvm을 사용하면 로컬에 설치된 Jvm 메모리를 사용할 것이고 그렇게 되면 기존에 사용하던 eclipse나 tomcat에서 설정된 메모리 사이즈를 오버할 수 있기 때문이다.

 

그래서 설치된 보안프로그램을 보니 java로 만들어져 있었다.

 

그래서 이 보안프로그램을 종료시키고 다시 실행해 보니 정상적으로 실행되었다.

 

깜빡하고 있었는데 필자는 eclipse와 tomcat에 로컬에서 활용 가능한 최대수치의 메모리 설정을 하고 있었다. ㅠㅠ...

 

보안프로그램이 얼마만큼의 메모리를 필요로 하는지는 찾아서 eclipse가 실행 될 때 차지하는 메모리를 수정해야겠다.