오픈소스 자바 개발「기대 반, 우려 반」

hys545의 이미지

오픈소스 자바 개발「기대 반, 우려 반」

Martin LaMonica (CNET News.com)
2005/05/11
원문보기

아파치 재단이 J2SE의 오픈소스 버전을 만들겠다는 의향을 밝혔다. 썬은 일단 이 계획을 환영한다고 언급했다.

하모니(Harmony)라는 이름의 이 프로젝트는 6일 공식 제안됐고, J2SE(Java 2 Standard Edition)를 처음부터 새로 만드는 것을 목표로 하고 있다. J2SE는 자바 프로그램을 구동하는 데 필요한 기반 환경이다.

이 프로젝트는 아파치 재단 개발자들과 자바 개발에 참여하는 개발자들이 제안한 것이다. 아파치 재단은 오픈소스 웹 서버 아파치를 비롯해 여러 인기있는 오픈소스 소프트웨어 개발을 후원하고 있다.

제안자들은 JVM(Java Virtual Machine), 관련 라이브러리, 테스팅 소프트웨어를 만들고 결과물을 아파치 오픈소스 라이선스로 공개할 계획이다.

이번 제안이 받아들여지면 자바를 오픈 소스로 구현할 수 있게 된다. 이는 오픈소스 개발자를 비롯해 많은 사람들이 수 년동안 요구해왔지만 썬이 완강히 거부한 것이다.

자바 역사의 전환점 될 수도
썬은 J2SE의 주 개발사로, 자바 소프트웨어 간의 호환성을 보장하기 위해 테스팅 도구와 참조 구현을 제공하고 있다. 썬은 법적 문제와 자바 호환성에 대한 고객들의 우려 때문에 J2SE를 오픈소스 라이선스로 공개하지 않았다.

하모니 제안자들은 프로젝트 제안서와 FAQ에서, J2SE 오픈소스 버전을 만드는 데 "공동체가 지대한 관심"을 보이고 있다고 전했다. 또한 하모니 프로젝트는 썬과 직접 경쟁하려는 것이 아니라며, 법적 문제를 피할 수 있을 것이라고 밝혔다.

이 프로젝트가 시작된 이유는, 썬이 JCP(Java Community Process) 규정을 변경했기 때문이다. JCP는 자바 표준화 기구로 오픈소스 개발 방식의 몇 가지 장점을 수용해 운영되고 있다.

썬의 부사장 그레햄 해밀턴은 "그럴 필요가 있는지 의문이지만 어쨌든 썬은 프로젝트를 환영한다"라고 밝혔다.

해밀턴은 그의 블로그에서 "하모니 프로젝트가 어떻게 진행될지 상당히 궁금하다. J2SE를 완벽하게 구현하는 것은 엄청나게 거대한 작업이다"라고 말했다. 해밀턴은 썬이 어떤 방식으로든 프로젝트에 참여하게 될 것이라고 덧붙였다.

버튼 그룹의 분석가 애니 토마스 마네스는 "오픈소스 자바 옹호론자들은 하모니 프로젝트를 환영하겠지만 어떤 프로젝트든 결실을 보려면 3~5년이 걸릴 수 있다"며, "아파치 재단 측이 썬의 J2SE 테스팅 가이드라인을 따라야 하기 때문에 호환성 문제는 없을 것이다"라고 말했다.

마네스는 "하모니 프로젝트가 멋진 작업이라고 생각하지만, 상용 벤더들과 경쟁해도 손색이 없는 결과물을 내놓으려면 쉽지 않을 것"이라며 "J2SE가 엄청난 양의 코드로 이루어져 있기 때문에 처음부터 새로 구현하는 데 오랜 시간이 걸릴 것"이라고 말했다.

엇갈린 반응들
자바를 오픈소스로 만든다는 얘기는 지난해에도 있었다. 이 얘기의 근원은 IBM이었는데, IBM 측에서는 그렇게 하면 리눅스에 자바 소프트웨어를 포함시키는 일을 간단하게 할 수 있을 것이라고 말했다.

하지만 몇몇 자바 프로그래머들이 하모니 프로젝트에 보인 첫 반응은 그다지 열광적이지는 않았다.

몇몇 자바 개발자들은 9일 하모니 프로젝트 참여자들에게 아파치 재단의 다른 일에나 집중하라고 주장했다. 이들은 J2SE 런타임(runtime)을 처음부터 새로 만드는 작업은 어려운 일인데다가 이미 상용 버전이 있는데 왜 다시 만드는지 의아해하고 있다.

체드릭 보이스트는 더서버사이드(TheServerSide)에 기고한 글에서 "지금까지의 경험이나 여러 컨퍼런스에서 이런 류의 질문이 나오는 것을 종합해 보면, 오픈소스 자바에 대해 관심 있는 사람은 거의 없다고 확신한다"라고 말했다. 체드릭 보이스트는 지난해 BEA 시스템을 떠나 구글에 합류한 실력 있는 엔지니어다.

보이스트는 "100% 호환되는 J2SE가 실제로 나올 가망도 없지만 어쨌든 나온다면, 사람들이 썬의 J2SE 대신 그걸 사용할 이유가 있을까?"라고 물었다.

썬뿐 아니라 BEA와 IBM도 자체 J2SE를 갖고 있다. 그러나 이 버전들 중 어떤 것도 OSI(Open Source Initiative)가 정의하는 오픈소스 라이선스를 따르지는 않는다. OSI는 오픈소스 라이선스에 대한 가이드라인을 제공하는 단체다.

그러나 썬은 J2SE 차기 버전에 들어갈 코드를 주기적으로 발표함으로써 J2SE 개발 프로세스를 상당 부분 변경해 버렸다. J2SE 차기 버전은 내년에 나올 예정이다.

자바 런타임에는 J2SE뿐 아니라 J2EE, J2ME(Java 2 Micro Edition)가 있다.

J2EE 서버들은 이미 오픈 소스 라이선스로 발표됐다. 예를 들면 제이보스(JBoss) 애플리케이션 서버, 프랑스 측 컨소시엄인 오브젝트웹에서 만든 JonAS 등이 있다. 아파치 재단도 제로니모(Geronimo)라는 자체 프로젝트를 갖고 있다. 이 프로젝트는 곧 J2EE 인증을 받을 예정이다.

아파치 재단의 일원이자 하모니 프로젝트 제안자인 게이르 마그누손 주니어는 오픈소스 라이선스를 따르는 J2SE를 만들면 신규 자바 소프트웨어 개발이 늘어날 것이라고 말했다.

마그누손은 하모니가 비판받는 것에 대해 "어디서나 공통적인 전화 '발신음'처럼 J2SE가 모든 플랫폼에서 공통적인 것이 돼야 한다고 생각한다"라고 답했다.

마그누손은 "썬의 기술 사양을 그대로 구현하는 데는 긴 시간과 많은 비용이 든다. 누군가가 자바를 오픈소스로 만들어 공통되는 기술을 공유할 수 있다면 개발자나 기업들은 이를 기반으로 '바퀴를 새로 만드는' 수고를 줄이고 부가가치를 만드는 데 집중할 수 있을 것이다. 하모니 프로젝트가 지향하는 것 중 하나는 그러한 공통 부분을 자유롭게 사용할 수 있게 오픈소스로 만드는 것이다. 그리고 이를 위해서는 J2SE를 처음부터 새로, 썬의 기술 명세와 호환되게 만들 필요가 있다"라고 밝혔다. @

elecguy의 이미지

하모니 공식 홈페이지가 있나요?
있다면 어떻게 되는지요?
아파치 홈페이지의 프로젝트에는 없던데..

폐인, 노가다 그 끝은..?

익명 사용자의 이미지

blackdown java 하고는 뭐가 다른 건가요???

jj의 이미지

elecguy wrote:
하모니 공식 홈페이지가 있나요?
있다면 어떻게 되는지요?
아파치 홈페이지의 프로젝트에는 없던데..

보통 정식 아파치 프로젝트이전 단계의 프로젝트는 incubator에서 진행되는데, 아직 incubator에도 정식으로 안 올라온 상태일꺼에요. 지금은 올라왔으려나...

개인적으로는 환영입니다. 걱정되는건 실력있는 개발자들이 시간을 많이 낼 수 있느냐의 문제 같습니다. 되려 아파치쪽에서 강력하게 몰고나가서 유닉스피플들의 구미에 맞게 VM 기술개발을 선도해 나갈 수 있지 않을까하는 생각도 해봅니다. 문제는 인력.

--
Life is short. damn short...

anarch의 이미지

.Net과 Mono 관계가 생각 나는 군요.. .Net은 기본적으로 Windows에서만 되니까.(물론 FreeBSD으로 포팅을 했다고는 들었습니만. .Net에 큰 관심이 없어서 자세히는 모릅니다.) 다른 플랫폼에서의 .Net 환경이라는 측면에서 Mono가 매리트가 있던게 아닌가 하는 생각이 드는군요.

SunJava와 하모니의 관계를 약간 .Net와 Mono와 다를수 있겠군요.
Debian/PPC을 쓰는 저로써는 PPC/Linux에서 J2SDK가 없어서 Kaffe을 설치한 경험으로는 하모니가 나쁘게 보지는 않습니다만. 좀 바퀴를 다시 만드는게 아닌가 하는 생각이 드는군요. (재발명은 아니지만.) 썬에서 소스를 오픈소스하는게 더 바퀴를 두번 만들지 않게 하는 것 아닐까요..

아니면 장기적으로 썬이 자바에 대한 아웃소싱을 하는게 아닐지..-_-;; 스팩만 꽉 잡고 구현 같은 비용이 마니 드는 건 오픈소스로 넘기는 것이 아닐지.-_-;;;

하지만 오픈소스는 어쩠든 환영.입니다.;;