• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Java klappt nicht; Suse 10.0 - TuxGuitar -

Ich weiß nicht, ob ich mit meinem Anliegen hier richtig bin. Wenn nicht, dann bitte berichtigen.



Ich habe eine Suse 10.0 32 bit Version und komme einfach mit Java nicht klar.

Ich habe mittlerweile ca 10-15 vergebliche Installationsversuche hinter mir, aber ich habe mittlerweile das Gefühl, ich seh den Wald vor lauter Bäumen nicht mehr.
Versucht habe ich es mit Konsole+Apt, Synaptic, Yast, aber immer negativ!

Zwischendurch hatte ich mal alles runtergeworfen, was die Bezeichnung Java hatte und habe dann nochmal alles neu installiert...negativ!


Was ich ansonsten noch so versucht habe, habe ich mal zusammengetragen und kopier das mal hier rein:

Suse 10.0 32 bit
=========================


ln@linux:~> rpm -qa | grep java
java-1_5_0-sun-1.5.0_03-2
java-1_5_0-sun-alsa-1.5.0_03-2
ln@linux:~>
===============================
ln@linux:~> java -version
bash: java: command not found
ln@linux:~>
==================================
ln@linux:~> rpm -ql java-1_5_0-sun
/usr/lib/jvm-exports/java-1.5.0-sun-1.5.0_03
*
/usr/lib/jvm/java-1.5.0-sun-1.5.0_03
/usr/lib/jvm/java-1.5.0-sun-1.5.0_03/jre
/usr/lib/jvm/java-1.5.0-sun-1.5.0_03/jre/bin
/usr/lib/jvm/java-1.5.0-sun-1.5.0_03/jre/bin/ControlPanel
/usr/lib/jvm/java-1.5.0-sun-1.5.0_03/jre/bin/java
*
/usr/lib/jvm/jre-1.5.0-sun
/usr/share/doc/packages/java-1_5_0-sun
*
/usr/share/java-1.5.0-sun
/usr/share/man/man1/java-java-1_5_0-sun.1.gz

*= steht für eine ganze Latte ähnlicher Dateinamen. Wenn notwendig, kann ich auch die ganze Ausgabe posten (ist aber ellenlang...)
===================================================


ln@linux:~> /usr/lib/jvm/java/bin/java -version
bash: /usr/lib/jvm/java/bin/java: Datei oder Verzeichnis nicht gefunden
======================================================

linux:/home/ln # set | grep JAVA
linux:/home/ln #
=====================================================

linux:/home/ln # set | grep JDK
linux:/home/ln #
===========================================

linux:/home/ln # set | grep JRE
linux:/home/ln #
=============================================

linux:/home/ln # update-alternatives --config java

There is only 1 program which provides java
(/usr/lib/jvm/jre-1.5.0-sun/bin/java). Nothing to configure.
linux:/home/ln #
===================================================


Ich vermute mal, dass ich mir da mittlerweile einen ganz schönen Murks angerichtet habe und wäre froh, wenn mir jemand helfen könnte, das wieder in Ordnung zu bringen.

Vielleicht hat ja auch jemand einen guten Tip für eine Java-Anleitung auf Deutsch. Die bisher gefundenen Seiten waren entweder zu englisch, oder sonst wie nicht für mich geeignet...
 
Hallo,

sind die Links unter /usr/bin und /etc/alternatives richtig gesetzt ?
Beispiel:

Code:
/etc/alternatives/java -> /usr/lib/jvm/jre-1.5.0-sun/bin/java

Code:
/usr/bin/java -> /etc/alternatives/java

Anlegen kann man diese z.B. mit
Code:
ln -s /etc/alternatives/java /usr/bin/java
 

Leviathan

Hacker
Probier mal die 1.5.0 v 8

https://sdlc1d.sun.com:443/ECom/EComActionServlet;jsessionid=15F47B54785DA2188E65EFCB2004A52A

Gruß Dominik
 

Grothesk

Ultimate Guru
Nein!
NICHT von sun irgendwas runterladen!
Du musst eine entsprechende Installationsquelle hinzufügen, die ein Suse-rpm zur Verfügung stellt. Weiß aber nicht mehr, wie die bei Suse 10.0 lautet. Dürftest du aber herausfinden können. Dann installierst du mit deinem Paketmanager das sun-java-1.5-jre Paket sowie das passende 1.5-plugin.
Und das war es dann auch schon. Da wird nichts händisch installiert. Schon gar nicht irgendwelches Zeug direkt von sun.
 
Poste mal:
Code:
l /etc/alternatives/java
der Link sollte auf "/usr/lib/jvm/jre-1.5.0-sun/bin/java" oder so zeigen und "/usr/lib/jvm/jre-1.5.0-sun" auf "/usr/lib/jvm/java-1.5.0-sun-1.5.0_03/jre/" (<- das Verzeichnis in dem _wirklich_ die JRE liegt).

Außerdem:
Code:
/usr/lib/jvm/java-1.5.0-sun-1.5.0_03/jre/bin/java -version
 

oc2pus

Ultimate Guru
Grothesk schrieb:
Weil die Pakete nicht richtig funktionieren unter Suse.
... und weil sie nicht jpackage-utils und update-alternative kompatibel sind ...

der Kutscher058 kann dir ein Lied davon singen :)

und damit die anderen für SuSE erstellten java-Pakete ebenfalls nicht funktionieren ...

die update-alternatives Links muss man nicht manuell erstellen:
probiere mal
Code:
update-alternatives --auto java
und kontrolliere dann deine Links ob sie nun zu java zeigen.

ansonsten musst du wohl: man update-alternatives durcharbeiten.
 
oc2pus schrieb:
Grothesk schrieb:
Weil die Pakete nicht richtig funktionieren unter Suse.
... und weil sie nicht jpackage-utils und update-alternative kompatibel sind ...
[...]
und damit die anderen für SuSE erstellten java-Pakete ebenfalls nicht funktionieren[...]
Habt ihr da ein Beispiel dafür?

Ich frage weil ich bisher nie mit den SUN Distributionen Probleme hatte - allerdings benutze ich jPackage nicht (daß man dann die Links selber setzen muß ist klar :D). Oder meinst du daß Problem auftauchen wenn Pakete dann per jPackage eingespielt werden?

Der Grund ist daß SUSE noch bei 1.5.0.07 ist während .09 aktuell ist.
 

oc2pus

Ultimate Guru
Blackscreen schrieb:
oc2pus schrieb:
Grothesk schrieb:
Weil die Pakete nicht richtig funktionieren unter Suse.
... und weil sie nicht jpackage-utils und update-alternative kompatibel sind ...
[...]
und damit die anderen für SuSE erstellten java-Pakete ebenfalls nicht funktionieren[...]
Habt ihr da ein Beispiel dafür?

Ich frage weil ich bisher nie mit den SUN Distributionen Probleme hatte - allerdings benutze ich jPackage nicht (daß man dann die Links selber setzen muß ist klar :D). Oder meinst du daß Problem auftauchen wenn Pakete dann per jPackage eingespielt werden?

Der Grund ist daß SUSE noch bei 1.5.0.07 ist während .09 aktuell ist.

ja einige ;)
schau dir die Azureus, FrostWire, hibiscus, jameica etc Pakete an. Alle nutzen die jpackage Features und haben ein auf jpackage-utils zugeschnittenes Start-Script.

der Mozilla-/Firefox-Browser kann nur dann java, wenn man den link auf das plugin manuell setzt.

etc ...

alles in allem: Anfänger sollen RPM-Pakete für ihre SuSE verwenden. Da ist das alles bereits ordentlich erledigt. Profis, können sich ja mit manueller linkerei behelfen :)

Und btw. nur weil das java eine Minor-Release Nummer mehr hat ist es noch lange nicht erforderlich unbedingt jedes Update mitzumachen. Die meisten kennen den Unterschied eh nicht (wer liest schon Release-Notes ?)
 

Mumie

Hacker
Grothesk schrieb:
Du musst eine entsprechende Installationsquelle hinzufügen, die ein Suse-rpm zur Verfügung stellt. Weiß aber nicht mehr, wie die bei Suse 10.0 lautet.
Die stehen alle hier:
http://www.linux-club.de/faq/Quellen_für_SuSE_Linux_10.0
 
OP
K

Kutscher58

Hacker
Blackscreen schrieb:
Poste mal:
Code:
l /etc/alternatives/java
der Link sollte auf "/usr/lib/jvm/jre-1.5.0-sun/bin/java" oder so zeigen und "/usr/lib/jvm/jre-1.5.0-sun" auf "/usr/lib/jvm/java-1.5.0-sun-1.5.0_03/jre/" (<- das Verzeichnis in dem _wirklich_ die JRE liegt).


ln@linux:~> l /etc/alternatives/java
lrwxrwxrwx 1 root root 35 2006-09-11 20:41 /etc/alternatives/java -> /usr/lib/jvm/jre-1.4.2-sun/bin/java
ln@linux:~>




Außerdem:
Code:
/usr/lib/jvm/java-1.5.0-sun-1.5.0_03/jre/bin/java -version

ln@linux:~> /usr/lib/jvm/java-1.5.0-sun-1.5.0_03/jre/bin/java -version
bash: /usr/lib/jvm/java-1.5.0-sun-1.5.0_03/jre/bin/java: Datei oder Verzeichnis nicht gefunden

Ich habe eben nochmal den Vorschlag von Grothesk aufgegriffen und die 1.5er Pakete mit Synaptic upgegradet. Trotzdem führt er jetzt 1.4er und eine alte Version von 1.5.0_03 auf, obwohl jetzt eigentlich die Version 1.5.0-07 drauf sein müsste.

Ein Paket mit dem Namen 'sun-java-1.5-jre' habe ich mit Synaptic nicht gefunden.
 
Willst du jetzt 1.4 oder 1.5 installieren? Wenn 1.5 dann sollte /etc/alternatives/java auch auf ne 1.5 Version zeigen.

Poste mal
Code:
l /usr/lib/jvm
Außer nem Haufen symbolischer Links sollte es da auch ein paar Verzeichnisse geben. In denen ist deine Java Installation.

D.h. wenn in /usr/lib/jvm das Verzeichnis (kein Link) "java-1.5.0-sun-1.5.0_07" existiert, so ist das JRE unter "java-1.5.0-sun-1.5.0_07/jre" und das java Executable unter "java-1.5.0-sun-1.5.0_07/jre/bin".

Bei mir schaut das z.B. so aus:
stephan@Darwin:/usr/lib/jvm> l /etc/alternatives/java
lrwxrwxrwx 1 root root 35 2006-08-18 23:31 /etc/alternatives/java -> /usr/lib/jvm/jre-1.5.0-sun/bin/java*
stephan@Darwin:/usr/lib/jvm> l /usr/lib/jvm/jre-1.5.0-sun
lrwxrwxrwx 1 root root 27 2006-08-18 23:31 /usr/lib/jvm/jre-1.5.0-sun -> java-1.5.0-sun-1.5.0_07/jre/
stephan@Darwin:/usr/lib/jvm> l /usr/lib/jvm/java-1.5.0-sun-1.5.0_07/jre/
insgesamt 3
drwxr-xr-x 6 root root 144 2006-08-18 23:31 ./
drwxr-xr-x 7 root root 192 2006-08-19 06:01 ../
drwxr-xr-x 2 root root 480 2006-08-18 23:31 bin/
drwxr-xr-x 2 root root 72 2006-08-18 23:31 javaws/
drwxr-xr-x 17 root root 2032 2006-08-18 23:31 lib/
drwxr-xr-x 4 root root 96 2006-08-18 23:31 plugin/
stephan@Darwin:/usr/lib/jvm> l /usr/lib/jvm/java-1.5.0-sun-1.5.0_07/jre/bin/
insgesamt 1269
drwxr-xr-x 2 root root 480 2006-08-18 23:31 ./
drwxr-xr-x 6 root root 144 2006-08-18 23:31 ../
-rwxr-xr-x 1 root root 4145 2006-05-29 17:07 ControlPanel*
-rwxr-xr-x 1 root root 65076 2006-05-03 11:26 java* <-- das suchst du
......
Außerdem gibts kein "sun-java-1.5-jre". Die 1.5 Pakete heißen:
Code:
java-1_5_0-sun-devel-1.5.0_07-1.1 <-- JDK
java-1_5_0-sun-plugin-1.5.0_07-1.1 <-- Browser Plugin
java-1_5_0-sun-1.5.0_07-1.1 <-- JRE
java-1_5_0-sun-src-1.5.0_07-1.1 <-- Sources
(Wenn du nicht Programmieren willst brauchst du nur JRE & Plugin.)
Davon ausgehend daß du den normalen Update Channel für 10.0 aktiviert hast solltest du die selben Pakete / Versionen per apt, Smart, Yast, ... installieren können.
Poste trotzdem mal:
Code:
rpm -qa | grep java
 

Grothesk

Ultimate Guru
Sorry, wenn ich hier Verwirrung gestiftet habe. Wusste den genauen Namen von dem Paket nicht, da ich keine Suse installiert habe und damals immer nur das plugin installiert habe, da ich mit Java-Programmierung nix am Hut hab. Naja, und das hat immer ganz gut funktioniert.
 
OP
K

Kutscher58

Hacker
Blackscreen schrieb:
Willst du jetzt 1.4 oder 1.5 installieren? Wenn 1.5 dann sollte /etc/alternatives/java auch auf ne 1.5 Version zeigen.

Ganz klar: Das 1.5er soll es sein!



Poste mal
Code:
l /usr/lib/jvm
Außer nem Haufen symbolischer Links sollte es da auch ein paar Verzeichnisse geben. In denen ist deine Java Installation.

Poste trotzdem mal:
Code:
rpm -qa | grep java

ln@linux:~> l /usr/lib/jvm
insgesamt 69
drwxr-xr-x 3 root root 216 2006-10-10 21:41 ./
drwxr-xr-x 165 root root 70368 2006-10-10 01:11 ../
lrwxrwxrwx 1 root root 32 2006-10-10 21:41 java-1.5.0 -> /etc/alternatives/java_sdk_1.5.0/
lrwxrwxrwx 1 root root 23 2006-10-10 21:41 java-1.5.0-sun -> java-1.5.0-sun-1.5.0_07/
drwxr-xr-x 6 root root 144 2006-10-10 21:41 java-1.5.0-sun-1.5.0_07/
lrwxrwxrwx 1 root root 27 2006-10-10 00:50 jre-1.5.0 -> /etc/alternatives/jre_1.5.0/
lrwxrwxrwx 1 root root 27 2006-10-10 21:41 jre-1.5.0-sun -> java-1.5.0-sun-1.5.0_07/jre/
ln@linux:~>
=======================================================

ln@linux:~> rpm -qa | grep java
java-1_5_0-sun-alsa-1.5.0_07-1.1
java-1_5_0-sun-plugin-1.5.0_07-1.1
java-1_5_0-sun-devel-1.5.0_07-1.1
java-1_5_0-sun-1.5.0_07-1.1
java-1_5_0-sun-jdbc-1.5.0_07-1.1
ln@linux:~>
=====================================================



Von 'einem Haufen symbolischer Links' hab' ich aber nix gesehen. An den Ausgaben hier habe ich nichts gekürzt oder gelöscht....
 
Schaut doch ganz gut aus :D

In "/usr/lib/jvm/java-1.5.0-sun-1.5.0_07" sollte es jetzt die Unterverzeichnisse "bin" und "jre/bin" geben. Darin liegen die "java" Executables.

Teste das mal mit
Code:
/usr/lib/jvm/java-1.5.0-sun-1.5.0_07/bin/java -version
/usr/lib/jvm/java-1.5.0-sun-1.5.0_07/jre/bin/java -version
Das sollte dir die Version (1.5.0.07) anzeigen.

Wenns soweit funktioniert hat mußt du nur noch sicherstellen daß "/etc/alternatives/java" auf die richtige Stelle ("/usr/lib/jvm/jre-1.5.0-sun/bin/java") zeigt:
Code:
l /etc/alternatives/java
lrwxrwxrwx 1 root root 35 2006-08-18 23:31 /etc/alternatives/java -> /usr/lib/jvm/jre-1.5.0-sun/bin/java*
Abschließend teste das Ganze mit
Code:
which java
Das sollte "/usr/bin/java" anzeigen, was wiederum ein Link auf "/etc/alternatives/java" ist.

PS: Mit "einem Haufen symbolischer Links" sind die Verweise mit "->" gemeint. Z.B.:
lrwxrwxrwx 1 root root 27 2006-08-18 23:31 jre-1.5.0-sun -> java-1.5.0-sun-1.5.0_07/jre/
d.h. "jre-1.5.0-sun" ist ein virtuelles Verzeichnis, das auf das reale Verzeichnis "java-1.5.0-sun-1.5.0_07/jre" verweist.
 

oc2pus

Ultimate Guru
oc2pus schrieb:
[die update-alternatives Links muss man nicht manuell erstellen:
probiere mal
Code:
update-alternatives --auto java
und kontrolliere dann deine Links ob sie nun zu java zeigen.

ansonsten musst du wohl: man update-alternatives durcharbeiten.

das schon gemacht ?
deine Installation sieht gut aus, alles steht da wo es sein soll. Nur die links fehlen noch ....
 
Oben