gentoo und jdk 1.5

  • ich wollte grade jdk 1.5 auf meinem gentoo installieren, aber im portage tree ist nur 1.4.2.06. ich hab mir das 1.5er zwar von der javaseite runtergeladen, aber wie installier ich das jetzt sauber? nicht, dass dann, wenn auf 1.5 umgestellt wird, alles nochmal installiert wird. in einigen foren hab ich was von maskierten packages gelesen, aber 1.5 ist auch nicht maskiert. ist ja auch nicht instabil. warum haben die noch die alte version???

  • Es ist schon einige Zeit her, also nicht bös sein wenn irgendwas nicht ganz stimmt, bei mir war das ebuild noch nicht masked ;)

    Du hast wahrscheinlich jdk-1_5_0-linux-i586.bin runtergeladen, chmod +x und dort ausführen, wo dus hinhaben willst (jdks installieren sich über portage in /opt). Ergebnis:

    sensei@asuka bin $ ls /opt
    Acrobat5 bin eclipse firefox ICAClient mozilla netscape OpenOffice.org opera rar sun-jdk-1.4.2.05 sun-jdk-1.5.0 tomcat5 vmware

    env-update dannach kann nicht schaden, bin mir aber nicht mehr sicher ob das erforderlich ist.
    Jetzt musst du nur noch /opt/sun-jdk-1.5.0/bin u. /opt/sun-jdk-1.5.0/jre/bin in deinen PATH bringen. Folgende Möglichkeiten hast du zur Auswahl:
    - in /etc/profile
    - in deiner .bashrc (oder welche shell du auch immer benützt)
    - mit java-config (ist wahrscheinlich der "sauberste" Weg)

    emerge java-config
    man java-config
    java-config -L (Listet dir alle gefundenen JVMs auf, ist 1.5 nicht dabei dann tar xfvz das Attachment nach /)
    java-config -S <jvmid> bzw java-config -s <jvmid> (-S ist systemweit, -s userspezifisch)
    env-update; source /etc/profile (kann nicht schade, wird wahrscheinlich nötig sein)

    das sollte es eigentlich gewesen sein, gutes Gelingen!

  • Wie diese Seite hier zeigt, ist die 1.5er Release in Portage, aber hard masked, wird also nicht einmal noch für den maskierten Zweig als stabil genug gesehen.

    Du nimmst dir deshalb "=dev-java/sun-jdk-1.5.0.01" (oder die aktuell neue Version) und steckst diesen String sowohl in /etc/portage/package.unmask (zum Entfernen der harten Maskierung) und in /etc/portage/package.keywords (zum normalen Demaskieren) hinein und machst ein normales "emerge sun-jdk". Dafür muss dann die Datei von Sun im distfiles-Ordner liegen, aber das sagt er dir dann eh.

    "Egbert B. Gebstadter is the Egbert B. Gebstadter of indirect self-reference." - Egbert B. Gebstadter

  • Also ich hab das gemacht:

    In /etc/package.unmask:
    =dev-java/sun-jdk-1.5.0

    In /etc/package.keywords:
    dev-java/sun-jdk ~x86

    Dann emerge sun-jdk und den Anweisungen folgen (bin runterladen -> distfiles usw.)

  • danke für die tipps! :thumb:
    hat funktioniert. weiß jemand, warum das teil hard-masked ist?
    ich hab jetzt das problem, dass es mit umlauten nicht umgehn kann. zuerst wars nur in einer ausgabe (da war ein "für" drin). dann wollte er ein programm nicht ausführen, immer ein noclassdefinederror oder so was in der art. in einem anderen ordner gings aber. hab alle pfade überprüft - alles ok. bis ich gemerkt hab, dass ein übergeordneter ordner "übungen" hieß... umbenannt in "uebungen", und schon liefs. wo fehlts denn da? ich mein, ich weiß eh dass umlaute immer so eine sache sind, aber ältere java-versionen hatten damit keine probleme.

  • Zitat von derbrain

    weiß jemand, warum das teil hard-masked ist?

    Normalerweise machen die das wenn entweder das Programm selbst noch überhaupt nicht produktiv einsetzbar ist (z.B. Entwicklungsversionen von gcc oder X.org) oder wenn das ebuild sich irgendwie noch mit dem System überschlagt.

    Da das JDK keine Beta oder pre oder irgendwas ist, wirds wohl am zweiten Punkt liegen. Manchmal steht auch im Changelog was darüber, nicht aber in diesem Fall.

    Zitat

    ich hab jetzt das problem, dass es mit umlauten nicht umgehn kann.

    Das Problem hab ich aber auch, und zwar schon in meiner aktuellen JDK-1.4-Version. Ich vermute mal dass das irgendein Gwirks mit den Zeichensätzen (Unicode / ISO-8859-1) sein wird.

    "Egbert B. Gebstadter is the Egbert B. Gebstadter of indirect self-reference." - Egbert B. Gebstadter

  • Zitat von J.Petso

    Ich vermute mal dass das irgendein Gwirks mit den Zeichensätzen (Unicode / ISO-8859-1) sein wird.


    hm ja, das hab ich mir auch gedacht. soweit ich mich erinnern kann ists bei mir beim 1.4er gegangen. mich hätt eben interessiert ob man das einstellen kann. oder war das unter windows??? naja, trotzdem. kann ja nicht angehn;-)

  • Hallo

    Soweit ich weiß gibts ab und zu Installationprobleme mit sun-jdk. Liegt wahrscheinlich daran,dass Gentoo von Haus aus Blackdown Java hergibt, dass ist eine freie Java-Machine, da die von Sun ja zig Copyrightbestimmungen unterliegt...

    Zum Zeichensatzproblem:
    http://www.gentoo.de/main/de/presentations/UTF-8.pdf


    lg
    Anonymous20200830

  • Yap, ich hab auch die 1.5er installiert wegen EProg (weil man ein Programm unter 1.4.2) nicht kompilieren wollte.
    Wenn Sun Java endlich komplett Opensourcen würde... :(

    Weil es an sich eine geniale Idee ist nur einmal Code für alle Plattformen zu schreiben, nur hat sich Sun den Erfolg selbst verbockt mit seinen blöden Lizensen und langsamen Implementationen..

    lg
    Anonymous20200830

  • Zitat von derbrain

    danke für die tipps! :thumb:
    hat funktioniert. weiß jemand, warum das teil hard-masked ist?


    Das liegt daran, dass extrem viele Programme irgendwo "enum" als Variablenbezeichnung verwenden und darum mit dem 1.5 nicht mehr kompilieren.:shinner:
    Ich hab kurze Zeit 1.5 auch als systemweite VM verwendet, bin aber aus diesem Grund wieder auf 1.4.2 zurückgegangen und verwende 1.5 nur als User.

  • Hm, die Diskussion gabs auf der Mailingliste auch mal. Das mit dem Enum ist aber kein Argument, da man bei JDK-1.5.0 einen Parameter "Abwärtskompatibilität zur JDK-1.4.1" angeben kann... Also muss es an etwas anderem liegen.

    lg
    Anonymous20200830

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!