2010년 8월 5일 목요일

Oracle Won't Say

Oracle Won't Say

Jun 10, 2010

Apache has been working on Harmony, which is an open-source version of the Java Virtual Machine licensed with the very liberal Apache Software License, for many years now. And while they've made steady progress in terms of code and released software, they've been at a stalemate with Sun and now Oracle over the Java Test Compatibility Kit (TCK or sometimes JCK).

With the TCK, Apache can certify Harmony as Java compatible, and officially brand it as "Java." But for obvious reasons, Oracle doesn't give this away for free - you must convince them to sell it to you, and then possibly pay royalty fees for each JVM shipped after that. Before you peg Oracle as the bad guy, remember that Sun/Oracle invented Java, they've spent a lot of their own money developing it over the years, and they have the rights to monetize and do with it as they please. Apache has refused to pay, and has resorted to a very nasty battle in the JCP, one which I wouldn't be surprised if it ended with Oracle abandoning it.

However, what makes this story interesting is that Apache is claiming that without being able to certify Harmony, developers will continue to use it and other non-certfied (aka non-compliant) versions of Java such as Android, and hence fragment the Java market. They're right, and it's happening. Although Google is careful not to come out and call Android's Dalvik VM Java, most Android developers consider it Java since it's basically one and the same. The language is the same, the libraries are mainly the same, and it will run most third-party Java code and libraries without issue. But it's not really Java since it hasn't been certified with the Java TCK, and there's a risk for fragmentation now and in the future.

You don't care, you say? Well, you might when your Java application or library runs on some Android devices, but not others, due to variations in Dalvik implementations. This is what Sun (now Oracle) has been guarding against. While I agree with this, what I don't agree with is Oracle's position, which is to DO NOTHING. Are they working to resolve this? They won't say. Are they going to sue someone? They haven't so far. Are they going to stop or continue OpenJDK? Won't say. Take a look at the following article which highlights recent Apache-Oracle talks, and you'll notice a pattern with Oracle at the end. When asked for a statement on the matter, they wouldn't say.

댓글 없음:

댓글 쓰기