개발/JAVA

톰캣 실행시 OutOfMemory : permgen space, 톰캣 안켜짐

신매력 2013. 3. 7. 10:31


2주 전쯤, 급하게 개발할것이 있었는데 ㅠㅠ (급할 때마다 꼭 이클립스는 말을 안듣지...)

로컬에서 톰캣 실행하는데 mapper 로그까지 뜨다가 중간에 멈추더니 안켜짐..


분명 잘되는 A프로젝트에선 켜져서 잘 했었는데, 

다른 프로젝트(B,C)에서 안켜지기 시작.

잘되던 A프로젝트 톰캣을 켜보니 여기도 안켜지기 시작...


이것은 메모리 문제일 것이라는 촉이 왔음.


기존에 잘 되고있었기 때문에, 굳이 eclipse.ini 파일의 메모리 설정을 바꾸고 싶지는 않았다.



톰캣을 delete 하고 B,C 프로젝트를 다시 새로 세팅해서 해봤음.

그래도 똑같음. 퇴근하라는 계시인듯해서 그냥 집에 감.


다음날 아침, mapper 로그까지 뜨더니 멈춘 뒤로, 20분동안 그냥 냅둬봤음.

전날 저녁엔 별짓을 해도 안되더니 아침에 혼자 됨.. 

대신 톰캣을 한번 키면 엄청 느리게 로그가 올라오다가 석세스 떨어짐(한 20~30분 후에..ㅠㅠ)


그리고 나서 초능력을 써서 개발을 시작했더니 정상으로 돌아옴.




2주 후 B,C 프로젝트를 마무리하고, 

A프로젝트를 오랜만에 켜봤음.

여기는 OOM(out of memory) 가 발생하면서 안켜짐.


난 오늘도 소신있게 eclipse.ini를 바꾸지 않았음.


대신 구글신한테 물어봤더니

web.xml 에 설정을 넣으라는 것을 보았다.


web.xml

<servlet>
.... 생략 
   <init-param>

      <param-name>enablePooling</param-name>

      <param-value>false</param-value>

   </init-param>

</servlet>



하지만 소용없었고

톰캣 delete 후 다시 세팅해서 했더니 이제서야 켜졌다.ㅋㅋ




+ eclipse.ini 의 메모리 설정을 바꿔야할 경우


이클립스가 안켜지거나, 이클립스 실행시 알럿창 커다란거 하나 뜰 때.

메모리 설정때문에 안켜지는 것이므로 조절을 해야한다.