Java 6u21 과 이클립스

최근에 오라클에서 Java 6 update 21 을 발표했습니다. 이번 버전에서 java.dll의 변경된 사항으로 인해 이클립스 구동에 영향을 미치게 되었다고 합니다.

변경 사항은 JDK의 개발사 정보를 기존 “Sun Microsystems, Inc.” 에서 “Oracle Corporation” 으로 수정한 것인데요 이클립스의 경우 Sun JRE 에 있는 non-standard 실행 옵션 중의 하나인 -XX:MaxPermSize 적용 가능 여부를 java.dll의 제조사 정보 문자열의 “Sun Microsystems”로 구분하고 있다고 하네요. 실제로  -XX:MaxPermSize 옵션을 지원하지 않는 몇몇 JVM에 해당 옵션을 적용하면 이클립스 구동이 실패한다고 합니다. 이클립스 런처는 Windows에서 실행되는 SUN VM인 경우 자동으로 -XX:MaxPermSize=256m 옵션을 적용한다고 하네요.

JVM 의 Vendor 정보를 변경한 것으로 영향을 받는것은 비단 이클립스 뿐만이 아닐겁니다.
http://www.excelsior-usa.com/blog/excelsior-jet/apps-will-stop-working-under-oracle-jre/ 에서와 같이 System.getProperty(“java.vm.vendor”) 값으로 무언가를 처리하는 모든 어플리케이션이 영향을 받을 수 있습니다.

JAVA가 Oracle의 자산이 된 이상 개발사 정보를 변경하는 것을 뭐라고 할 순 없지만 기존에 개발된 어플리케이션에 미치는 영향을 생각한다면 오라클이 어떤식으로든 액션을 취하지 않으면 안될것 같습니다. Java 6u21에서 이클립스 구동이 실패한다면 당분간은 JDK를 Java 6u20으로 다운그래이드 해야할 듯 합니다.

1 Comment

Add Yours →

지난 6월 23일에 발표된 Eclipse 3.6 Helios 를 슬슬 사용해 보려고 새로운 마음으로 JDK도 JDK 6 Update 21 을 다운받아서 설치하고 기존에 사용하던 프로젝트를 저장소에서 Checkout받자 프로젝트를 생성하던 도중 이클립스가 죽어버리는 현상이 발생했습니다. (Subclipse, m2eclipse 사용중)기존에도 종종 이클립스는 메모리오류가 발생하였기 때문에 아무생각없이 eclipse.ini파일을 수정하여 주었지만 좀처럼…

답글 남기기

This site uses Akismet to reduce spam. Learn how your comment data is processed.