Well I’ve been programming too much in java lately, but for many reasons I am not yet as informed as I would like about how java can be used to develop Open Source Apps or how is it related itself to Open Source software.
To my knowledge java is open source software itself, released under the GPL…
However are all versions of it open?
Also are all parts of java open or it still includes code that is propriety software?
(I am not fully aware of what GPL license allows…)
How can java be used to create open source software ? Are there any limitations depending the version you use for development?
Am I able to license my java apps using any license i want (ex. BSD)
Obviously, programs written in Java rely upon the existence of a suitable runtime-engine (JRE) being available on the computer in question. That, of course, is the user’s responsibility … most-likely taken care of on his behalf by the operating system vendor.
Therefore, (and although “INAL”) I fully expect that the problem is thus reduced to “the general case of ‘open source.’” If you lawfully possess the copyright to a piece of source code, then you are fully entitled to distribute that source-code (should you elect to do so), just as surely as you are entitled to distribute binary works that have been made from it.
You are the copyright owner. If you elect to distribute your work in source-code form under (say…) the GPLv2 license, you are free to do so.
If, instead, you elect to distribute it in binary form, once again you are free to do so. (The copyright licenses of every compiler or other language-system, including gcc, expressly permit you to freely distribute you, the lawful purchaser of a copy of their compiler, to distribute whatever you can manage to create with it.)
The “brilliant genius” aspect of “open source” is simply this: no one gave-away, forfeited, or in any way compromised their copyrights! They simply elected to be very generous and “open” in how they elected to license them, particularly with regard to “derivative works.” The entire arrangement is consistent with, and built within, the framework of existing (international) law. And… “the rest is history.”