Schon besser als bei Heise die News (vor allem umfangreicher). Trotzdem ist es noch immer IcedTea, welches nun den TCK Test bestanden hat und nicht OpenJDK alleine.
Hier der Artikel, auf den sich alle berufen. Da steht klar und deutlich, daß IcedTea den Test bestanden hat.
Und auf der OpenJDK6 steht noch immer "Not all of the source code that makes up the JDK is available under an open-source license.".
äh, ich nicht ganz, also IcedTea muss ich installieren, wenn ich ein kompartibles OpenSource Java haben möchte. Aber was ist dann OpenJDK? Ein Fork? Eine nichtmehr weiterentwickelte Version? Und sind die benötigten Pakete schon in den repos von Ubuntu 8.04?
OpenJDK ist von Sun und enthält noch binary plugs, das ist bytecode an dem Sun nicht die Rechte hat um sie unter der GPL zu veröffentlichen. Sun bemüht sich diese Teile neu zu schreiben und sie dann veröffentlichen zu können.
IcedTea hat dieses OpenJDK ohne die binary plugs genommen und die fehlenden Teile durch die aus dem GNU-Classpath Projekt ersetzt, um eine vollkommen freie Implementierung zu bekommen. IcedTea wurde von RedHat gestartet.
Der OpenJDK6 Paketbuild in fedora 9 hat die Tests auf x86 und x86_64 bestanden. Das Paket in Fedora basiert auf IcedTea 1.2, das seinerseits auf OpenJDK6 build 9 basiert. Die Patches aus IcedTea 1.2 sind zum grossen Teil bereits in OpenJDK6 build 10 integriert, der Rest kommt allmählich in den nächsten OpenJDK6 builds nach, wenn es diverse Tests durchgelaufen hat.
Das Paket in Fedora heisst auch OpenJDK6 statt IcedTea1.2 ;)
Die Konfusion was jetzt was ist lässt sich leicht erklären:
* OpenJDK7 ist die aktuelle Entwicklungsversion von Java7.
* OpenJDK6 ist die freie Version von Java6. Dort liegt der Focus von Distributionen im Moment.
* IcedTea ist ein Wrapper um OpenJDK6, der unter anderem ein configure script, gcjwebplugin und netx mitbringt, und als staging area für Linux-spezifische Patches funktioniert, bis diese den weg Upstream ins OpenJDK repository finden. Angefangen hat IcedTea als Versuch, die Lücken in OpenJDK mit Code aus GNU Classpath zu schliessen. Da Sun und die OpenJDK Entwicklercommunity die Lücken in OpenJDK im letzten Jahr dann weitgehend geschlossen haben (es fehlt noch ein wenig SNMP code, der nicht für den TCK Test relevant ist), hat dieser Aspekt von IcedTea an Bedeutung verloren, dafür der Aspekt der 'staging area' für Distributionsspezifische Patches an Bedeutung gewonnen.
Alex Buckley,Neil Gafter und Michael Ernst hatten eine Session auf der JavaOne zum Thema der Spracherweiterungen die in Java7 zu erwarten sind: http://developers.sun.com/learning/javaoneonline/2008/pdf/TS-5581.pdf
und Danny Coward hatte eine übersicht der Änderungen für Java 7 in der Session http://developers.sun.com/learning/javaoneonline/2008/pdf/TS-6271.pdf
Von einem OpenJava-Komitee weiss ich nichts - was könnte das sein?
Ach, das OpenJDK governance board! Ja, da bin ich dabei.
Das governance board hat aber keine exekutive Funktion, d.h. es macht nicht die Vorgaben, welche Sprachfeatures in Java 7 reinkommen, es kümmert sich um 'legislative/judikative' Belange, also die Aussarbeitung der Projektverfassung und die Selbstverwaltung des Projektes.
Den beiden *.pdf ist nichts über math.nist.gov/javanumerics zu entnehmen. Hat man von Seiten Sun nicht mal Interesse IEEE754r zu implementieren? Ich mein ja nur, wenn man die Dokumentation für die Niagara-Prozessoren rausgibt und selber Prozessoren baut kann das ja dann so schwer nicht sein. Von Intel und AMD ist schließlich nichts zu erwarten.
IEEE 745r ist leider überhaupt nicht mein Gebiet, daher kann ich dazu nichts sinnvolles sagen. Bei der Kitchen Sink Language ist kein Communityprojekt dabei, das explizit dieses Thema angeht: http://openjdk.java.net/groups/compiler/ksl.html , und Google schweigt sich auch dazu aus.
Ich meine, dass das bereits in Fedora 9 und EPEL 5 enthaltene java-1.6.0-openjdk eigentlich "IcedTea für Java 1.6" ist. Und genau dieses wurde meinem Verständnis nach soeben (siehe Artikel) als "Java" zertifiziert.
Somit ist (AFAIK!) Fedora 9 (und RHEL/CentOS 5) die einzige Distribution, die das neue, offene Java bereits jetzt mitliefert.
>Schon im Juni 2007 hatte sich Red Hat mit dem freien Projekt GNU Classpath >zusammengetan und konnte die freie Java-Umgebung IcedTea (für Java 7) präsentieren, >die OpenJDK verwendet und die fehlenden Teile mit GNU Classpath ergänzt.
Das liest sich so:
"Schon vor einem Jahr hatte IcedTea die vollständige Implementierung von Java7 präsentieren und selbst Sun in der Entwickluig von Java7 überholen."
> Doch erst nach der Bereitstellung von Java 6 durch Sun konnte auch ein freies > OpenJDK für Java 6 komplettiert werden.
"Aber da niemand Java7 will, haben sie sich jetzt auch die Mühe gemacht, die unfreien Reste von Java6 zu implementieren."
Hat jemand einen besseren Überblick als der Artikelschreiber?
Java 7 ist noch im Entwicklungsprozess und soll Ende 2009 offiziell sein. IcedTea war/ist ein Mix aus Java-7-Entwicklung und Classpath. Java 6 ist ein definierter Industriestandard, und davon gibt es jetzt eine quelloffene Version.
Um in Debian zu kommen, müssen noch ein paar kleinere Sachen in OpenJDK gefixt werden, damit es durch das strikte ftpmaster review kommt. Daran wird im Moment auf Suns Seite gearbeitet, vielleicht klappt es schon nach dem nächsten OpenJDK6 build.
Der Plugin ist nicht verpflichtender bestandteil jeder Java-Laufzeitumgebung, und wird daher auch nicht von den Kompatibilitätstests berücksichtigt. D.h. das eine hat mit dem anderen nicht direkt zu tun.
Trotzdem ist es noch immer IcedTea, welches nun den TCK Test bestanden hat und nicht OpenJDK alleine.
Hier der Artikel, auf den sich alle berufen. Da steht klar und deutlich, daß IcedTea den Test bestanden hat.
Und auf der OpenJDK6 steht noch immer "Not all of the source code that makes up the JDK is available under an open-source license.".
Warum? Ganz klar: Weil IcedTea es war.
Und ihm ist es als erstes aufgefallen, daß der Heise-Artikel einen Fehler enthält. Und Pro-Linux macht den selben Fehler.
Steht auch was zu IcedTea drin.
IcedTea hat dieses OpenJDK ohne die binary plugs genommen und die fehlenden Teile durch die aus dem GNU-Classpath Projekt ersetzt, um eine vollkommen freie Implementierung zu bekommen. IcedTea wurde von RedHat gestartet.
OpenJDK ist "Java 7". Es gibt ein rückportierung davon auf Java 6, das nennt sich OpenJDK6 (im gegensatz zu OpenJDK7)
Nun gibt es von IcedTea sowohl eine Variante namens "IcedTea" das ist der port von OpenJDK und eine Variante namens IcedTea6 von OpenJDK6.
Und IcedTea6 hat den Test (TCK) bestanden.
Java 7 ist noch nicht erschienen.
Das Paket in Fedora heisst auch OpenJDK6 statt IcedTea1.2 ;)
Die Konfusion was jetzt was ist lässt sich leicht erklären:
* OpenJDK7 ist die aktuelle Entwicklungsversion von Java7.
* OpenJDK6 ist die freie Version von Java6. Dort liegt der Focus von Distributionen im Moment.
* IcedTea ist ein Wrapper um OpenJDK6, der unter anderem ein configure script, gcjwebplugin und netx mitbringt, und als staging area für Linux-spezifische Patches funktioniert, bis diese den weg Upstream ins OpenJDK repository finden. Angefangen hat IcedTea als Versuch, die Lücken in OpenJDK mit Code aus GNU Classpath zu schliessen. Da Sun und die OpenJDK Entwicklercommunity die Lücken in OpenJDK im letzten Jahr dann weitgehend geschlossen haben (es fehlt noch ein wenig SNMP code, der nicht für den TCK Test relevant ist), hat dieser Aspekt von IcedTea an Bedeutung verloren, dafür der Aspekt der 'staging area' für Distributionsspezifische Patches an Bedeutung gewonnen.
* wann kommt Operatorenüberladung?
* wann kommt der Borneo-Dialekt für IEEE754-Unterstützung?
Mehr ist ja nicht zu erwarten, der Rest muss hardwareseitig erfolgen.
http://developers.sun.com/learning/javaoneonline/2008/pdf/TS-5581.pdf
und Danny Coward hatte eine übersicht der Änderungen für Java 7 in der Session
http://developers.sun.com/learning/javaoneonline/2008/pdf/TS-6271.pdf
Von einem OpenJava-Komitee weiss ich nichts - was könnte das sein?
http://entwickler.de/zonen/portale/psecom,id,99,news,35643,.html
Ab Abschnitt "Wer steuert Open Source Java?" taucht auch Deine Name auf.
Das governance board hat aber keine exekutive Funktion, d.h. es macht nicht die Vorgaben, welche Sprachfeatures in Java 7 reinkommen, es kümmert sich um 'legislative/judikative' Belange, also die Aussarbeitung der Projektverfassung und die Selbstverwaltung des Projektes.
Hat man von Seiten Sun nicht mal Interesse IEEE754r zu implementieren?
Ich mein ja nur, wenn man die Dokumentation für die Niagara-Prozessoren
rausgibt und selber Prozessoren baut kann das ja dann so schwer nicht sein.
Von Intel und AMD ist schließlich nichts zu erwarten.
ganz kurz zu dieser Baustelle:
http://de.wikipedia.org/wiki/IEEE_754 und
http://de.wikipedia.org/wiki/IEEE_754r
Das betrifft alle Programmiersprachen und ist nur Harswareseitig zu lösen.
Für Java ist mat.nist.gov/javanumerics relevant.
Ich finde es immer sehr schade das Wissenschaft und Industrie so schlecht
miteinander kommunizieren.
Wünsch Dir noch eine schönen Sonntag-Abend,
Jan
Danke
Somit ist (AFAIK!) Fedora 9 (und RHEL/CentOS 5) die einzige Distribution, die das neue, offene Java bereits jetzt mitliefert.
fs
Debian/Ubuntu
MfG
>Schon im Juni 2007 hatte sich Red Hat mit dem freien Projekt GNU Classpath
>zusammengetan und konnte die freie Java-Umgebung IcedTea (für Java 7) präsentieren,
>die OpenJDK verwendet und die fehlenden Teile mit GNU Classpath ergänzt.
Das liest sich so:
"Schon vor einem Jahr hatte IcedTea die vollständige Implementierung von Java7 präsentieren und selbst Sun in der Entwickluig von Java7 überholen."
> Doch erst nach der Bereitstellung von Java 6 durch Sun konnte auch ein freies
> OpenJDK für Java 6 komplettiert werden.
"Aber da niemand Java7 will, haben sie sich jetzt auch die Mühe gemacht, die unfreien Reste von Java6 zu implementieren."
Hat jemand einen besseren Überblick als der Artikelschreiber?
IcedTea war/ist ein Mix aus Java-7-Entwicklung und Classpath.
Java 6 ist ein definierter Industriestandard, und davon gibt es jetzt eine
quelloffene Version.
Ich hoffe jetzt ist alles klar.
In den offiziellen Repos ist es leider (noch?) nicht vorhanden.
Wäre fein, wenn mir jemand dazu ein paar Infos geben könnte.
Dann hoffe ich einmal auf die nächste Version.