Hi.
* Andre Schulze as8@rcs.urz.tu-dresden.de [2004-02-16 12:01]:
Es wäre tatsächlich schön, wenn es Java auch im Source geben würde, denn was nützt die Plattforum unabhängige Sprache, wenn es sie nicht für alle wichtigen Plattformen gibt. Bei Linux ist schon nach x86 faktisch Schluß.
Den Quellcode gibt es, man kann ihn im Netz direkt von Sun bekommen. Allerdings nicht unter den bekannten Open Source und Freie Software-Lizenzen. Ich habe mir die SCSL zwar nicht durchgelesen, aber auf [1] gibt es eine Zusammenfassung:
| While the Java 2 platform source code is available for any software | developer, we recommend that you consider the following before | downloading the code: | | - Modified source code cannot be distributed without the express | written permission of Sun Microsystems, Inc. | - Binary programs built using modified Java 2 SDK source code may not | be distributed, internally or externally, without meeting the | compatibility and other requirements described in the License | Agreement.
Kommentar zu den ersten beiden Punkten:
Sun kam auf die Idee, die Kontrolle über die Sprache in den eigenen Händen zu behalten, Java nicht extern standardisieren zu lassen usw., die Quellen sind aber verfügbar und können benutzt werden.
Die dargestellten Einschränkungen beziehen sich auf die Verbreitung veränderter Versionen, denn die enthalten ja Code von Sun und den will Sun nur selbst vertreiben, bzw. nur von Leuten vertreiben lassen, die ein extra Abkommen mit ihnen eingehen.
Wenn man den Quellcode aber hat kann man ihn anschauen, umbasteln, übersetzen, löschen, durch astyle jagen oder was weiß ich, schließlich ist es 1. der eigene Rechner und auf dem hat Sun nichts zu sagen und 2. hat man den Quellcode ja legal bekommen.
Falls man Änderungen macht, die man verbreiten will, kann man diese ja auch ohne das Original verbreiten. Dazu gibt es nämlich Patches. Und was ich mit eigenen Änderungen mache ist mein Bier. Wenn die irgendjemand haben will und auf seinem Rechner anwenden will: kann er doch, denn er kommt ja auch an den Java-Source. Ob man die Änderungen nun Sun zur Verfügung stellt oder sich was inkompatibles aus der Open Source oder aus der unfreien Ecke raussucht ist bei eigenen Werken ja immernoch die eigene Entscheidung.
Vielleicht schreit jetzt jemand auf, weil Patches Originalcode enthalten können (z.B. im Kontext bei unified diffs oder einfach Zeilen in denen man Teile geändert hat), aber der ist ja keine eigene Änderung und zeigt dem patch-Programm nur, was wo hin muß und was geändert wird.
Eigene Änderungen kann man immer machen und allein vertreiben, wenn man das Programm rechtmäßig besitzt. Unter [2] gibt es umfangreiche Informationen was man in der EU und den USA so machen darf.
Zugegebenermaßen ist es bequemer, alles als ganzes zu verteilen wenn man das darf (weshalb Linux schnell Minix-User übernehmen könnte, siehe "linux is obsolete"-Diskussion), aber wenn man das nicht darf ist das kein Hindernis, sondern macht nur etwas mehr Arbeit auf beiden Seiten. Dafür spart man Netzbandbreite.
| - Building, porting, and testing the Java 2 SDK source code requires a | high level of technical expertise.
Wer hätte gedacht, daß das einfach sein könnte ...
| - The Java 2 SDK source code is not the compiled Java 2 SDK.
Ach nee, ist klar, daß Mehl noch kein Brot ist ...
Gruß, Stefan
Netzverweise: ------------- [1] http://wwws.sun.com/software/communitysource/j2se/java2/index.html [2] http://cr.yp.to/softwarelaw.html