18 July 2008

What the lack of a 'classpath exception' for JavaME means for developers

I've been wondering why Sun ships some open source project with the 'linking' or 'classpath' exception and some other without.
JavaSE and other cool projects, like open-DMK, all ship with the exception and that means you can use them in commercial projects without having to release the source code.
Unfortunately PhoneME advanced doesn't fall into that category.
And that's a shame because it's really tempting to get hands in that project: it's so well structured and documented.
No idea how much royalties would be.

Anyway, there's another JVM, open MIKA, that is available under BSD. Here's what they have to say about Sun's licenses

/k/ Embedded Java Solutions: "So if you develop applets, midlets, whatever that will be downloaded onto a GPL version of Sun's VM, no problem. No problem either if you want to create an all-open-source device. But if you want to ship your device with pre-installed software which you do not want to place under a GPL-compatible licence (or you cannot do so, because the software is licensed-in), you need to do one of two things:

* Get a commercial licence from Sun, just as before, or
* Use a different, 'non-infectious' VM.

/K/'s Mika is non-infectious, because it comes with a BSD-style licence. Kaffe is under GPL just like Sun's open Java, but key developer Dalibor Topic apparently believes that this does not affect the applications which run on Kaffe, even if they are distributed together with the VM; to him this is just 'mere aggregation'. So with Kaffe you are probably OK (although you may have difficulty convincing a company lawyer of this). Other non-GPL VMs include ikvm, which runs on top of Mono; for GPL'd VMs it is best to contact the authors to see what arrangements can be made."


UPDATE a JavaPosse interview with a Sun JavaME leader clarifies this topic

No comments:

Post a Comment