aaronk
Anmeldungsdatum: 23. Juli 2005
Beiträge: 375
|
Hallo, Erhalte folgende Fehlermeldung: Unable to locate tools.jar. Expected to find it in /usr/lib/jvm/java-1.4.2-gcj-4.0-1.4.2.0/lib/tools.jar Daher habe ich unter /home/aaron/.bashrc den folgenden Eintrag vorgenommen:
export CLASSPATH=/usr/lib/j2sdk1.5-sun/lib/tools.jar Ich habe das Ganze auch so versucht:
CLASSPATH=$CLASSPATH:/usr/lib/j2sdk1.5-sun/lib/tools.jar
export CLASSPATH wenn ich in der Shell echo $CLASSPATH eingebe, erhalte ich die folgede Meldung:
/usr/lib/j2sdk1.5-sun/lib/tools.jar Ich würde gerne wissen, warum der folgende Pfad aufgerufen wird und nicht das von mir einegegebene:
/usr/lib/jvm/java-1.4.2-gcj-4.0-1.4.2.0/lib/tools.jar Würde mich über eine Antwort freuen Gruß Aaron
|
JuergenF
Anmeldungsdatum: 22. Oktober 2004
Beiträge: 2009
Wohnort: FFM
|
Ich mach zwar nix mit Java, vermute aber mal stark, dass er das Verzeichnis zur Datei haben will Also nur
CLASSPATH=$CLASSPATH:/usr/lib/j2sdk1.5-sun/lib <edit> Was passiert mit diesem Beitrag? Ich habe eben kurz irgendjemades Antwort im original-Posting gesehen. Die ist jetzt wieder weg, dafür auch die Formatierung der Code-Blöcke. Ups, wieder da. </edit>
|
aaronk
(Themenstarter)
Anmeldungsdatum: 23. Juli 2005
Beiträge: 375
|
Hi.. Hatte ich auch schon versucht. Erhalte immer noch die gleiche Meldung: Unable to locate tools.jar. Expected to find it in /usr/lib/jvm/java-1.4.2-gcj-4.0-1.4.2.0/lib/tools.jar
Buildfile: build.xml
build:
BUILD SUCCESSFUL
Total time: 4 seconds Gruß Aaron
|
user_unknown
Anmeldungsdatum: 10. August 2005
Beiträge: 17552
Wohnort: Berlin
|
Pardon, aaron! Ich habe als Supporter Korrekturrechte an anderer Leute Beiträge, und habe aus Versehen 'editieren' statt 'zitieren' auf Deinen Beitrag geklickt, und plötzlich war er weg, bzw. es erschien mein Beitrag mit Deinem Logo - daran habe ich dann meinen Fehler bemerkt. Ich glaube ich konnte Deinen ursprünglichen Beitrag restaurieren, nur daß er jetzt zwei Footer hat. Footer hat.
Ich würde gerne wissen, warum der folgende Pfad aufgerufen wird und nicht das von mir einegegebene:
/usr/lib/jvm/java-1.4.2-gcj-4.0-1.4.2.0/lib/tools.jar Weil Ubuntu per default mit dem gnu-compiler-(for)-java daherkommt, denn dieser unterliegt der GPL, und wird als GPL-Projekt naturgemäß bevorzugt.
Das war erstens. Zweitens hat irgendwer mal das segensreiche alternatives-System erfunden. Dieses arbeitet mit symbolischen Links von /usr/bin nach /etc/alternatives und von da zurück nach irgendwo, was anfangs sehr verwirrend sein kann. Mit Code: update-alternatives --help und Code: man update-alternatives kannst Du Dich informieren, ob Du das System lieber so anpaßt, daß es Dir zu Diensten ist, oder ob Du lieber alle Störer einfach rauslöschst. Meine überregional bekannte Faulheit hat mich zu zweitem geführt, aber die Geschmäcker sind unterschiedlich. Smilie
|
user_unknown
Anmeldungsdatum: 10. August 2005
Beiträge: 17552
Wohnort: Berlin
|
Juergen war schneller, aber nicht ganz richtig. Für .class-Files will er das Verzeichnis (weil darin die Klassen sind), aber bei JArchiven das Archivfile (auch hier: weil darin die Klassen liegen).
|
JuergenF
Anmeldungsdatum: 22. Oktober 2004
Beiträge: 2009
Wohnort: FFM
|
Ach Du warst das ☺
nur daß er jetzt zwei Footer hat. Footer hat.
🤣 Isst Du diese doppel-Schoko-Dinger zu Frühstück, nach denen mal alles 2x sagt?
|
aaronk
(Themenstarter)
Anmeldungsdatum: 23. Juli 2005
Beiträge: 375
|
Hi.. Danke für die schnelle Antwort ☺ Über "segensreiche alternatives-System" muss ich mich erst schlau machen. Habe noch nichts darüber gelesen. Muss jetzt ganz dumm fragen.. Was soll ich machen (einfachste Möglichkeit), damit tools.jar erkannt bzw. gefunden wird ? Gruß Aaron
|
user_unknown
Anmeldungsdatum: 10. August 2005
Beiträge: 17552
Wohnort: Berlin
|
Ohne Gewähr.
update-alternatives --remove-all java
CLASSPATH=/usr/lib/j2sdk1.5-sun/lib/tools.jar
export CLASSPATH
|
aaronk
(Themenstarter)
Anmeldungsdatum: 23. Juli 2005
Beiträge: 375
|
Hi.. Vielen Dank ☺ Da Java nicht mehr gefunden wurde, musste ich den folgenden Eintrag in .bashrc vornehmen:
export JAVA_HOME=/usr/lib/j2sdk1.5-sun/
export CLASSPATH=/usr/lib/j2sdk1.5-sun/lib/tools.jar:/usr/lib/j2sdk1.5-sun/bin/
PATH=$PATH:$JAVA_HOME/bin
export PATH Habe nur noch ein kleines Problem. Um Java Anwendungen zu starten, habe ich auf dem Desktop Icons angelegt. Icon beinhaltet z.B. den folgenden Befehl:
/opt/tvbrowser-2.1/start.sh start.sh beinhaltet folgendes:
#!/bin/bash
cd /opt/tvbrowser-2.1/
java -jar /opt/tvbrowser-2.1/tvbrowser.jar Die Icons funktionieren nicht mehr. Um anwendungen wie TVBrowser oder Eclipse zu starten muss ich in das Verzeichnis wechseln und das Programm mit der Hand aufrufen.
cd /opt/tvbrowser-2.1/
./start.sh Warum funktionieren die Icons nicht mehr.. komisch ?! Gruß Aaron
|
user_unknown
Anmeldungsdatum: 10. August 2005
Beiträge: 17552
Wohnort: Berlin
|
aaron_ hat geschrieben: Da Java nicht mehr gefunden wurde, musste ich den folgenden Eintrag in .bashrc vornehmen:
export JAVA_HOME=/usr/lib/j2sdk1.5-sun/
export CLASSPATH=/usr/lib/j2sdk1.5-sun/lib/tools.jar:/usr/lib/j2sdk1.5-sun/bin/
PATH=$PATH:$JAVA_HOME/bin
export PATH
a) Der Path ist die Liste der Verzeichnisse, in denen das Betriebssystem nach ausführbaren Dateien sucht. Der Classpath ist die Liste der Verzeichnisse und .jar-Dateien, in denen Java nach .class-Dateien sucht. $JAVA_HOME/bin gehört also nicht in den CLASSPATH.
export JAVA_HOME=/usr/lib/j2sdk1.5-sun/
export CLASSPATH=$JAVA_HOME/lib/tools.jar
PATH=$PATH:$JAVA_HOME/bin
export PATH b) Nachdem Du JAVA_HOME definiert hast, nutze es auch. Wenn Du updatest auf j2sdk1.6 brauchst Du dann nur an einer Stelle JAVA_HOME zu ändern.
aaron_ hat geschrieben:
Warum funktionieren die Icons nicht mehr.. komisch ?!
/opt/tvbrowser-2.1/start.sh müßte genauso funktionieren.
Ich kenne mich mit dem Starten über Icons nicht aus - bin ein notorischer Icon-auf-dem-Desktop-Verweigerer. Am classpath kann es nicht liegen, denn die Javadocs sagen:
java -jar Execute a program encapsulated in a JAR file. (...) When you use this option, the JAR file is the source of all user classes, and other user class path settings are ignored.
|
dentaku
Anmeldungsdatum: 31. Januar 2005
Beiträge: 3777
|
Regel Nr. 1 bei Java: nie die Variable CLASSPATH setzen! In den ersten Jahren meiner Java Erfahrung habe ich auch immer die CLASSPATH Umgebungsvariable gesetzt und am Anfang ging das noch gut. Sobald Du aber mehrere Java Programme / Projekte hast, geht alles durcheinander. Den CLASSPATH sollte man immer beim Aufruf von Javac/java angeben ("-cp" bzw. "-classpath"). Dann wirst DU auch keine Versionsprobleme bekommen.
|
Herrscher
Anmeldungsdatum: 12. Oktober 2005
Beiträge: 65
|
Ich mein auch, neuere Java-Versionen ziehen sich den Kram aus dem JAVA_HOME Verzeichnis, also lass CLASSPATH mal weg. Mit dem CP steh' ich auch öfter mal wieder auf Kriegsfuß. Ansonsten mal das lokale Verzeichnis adden. Also CLASSPATH=./:/opt/java... bzw. java -cp ./ -jar tvbrowser.jar
|
user_unknown
Anmeldungsdatum: 10. August 2005
Beiträge: 17552
Wohnort: Berlin
|
Das lokale Verzeichnis muß bei Windows, nicht jedoch bei Linux zugefügt werden. Und $JAVA_HOME ist auch nicht ganz korrekt. $JAVA_HOME/jre/lib/rt.jar und $JAVA_HOME/jre/lib/ext/*.jar müssen nicht explizit angegeben werden.
|
aaronk
(Themenstarter)
Anmeldungsdatum: 23. Juli 2005
Beiträge: 375
|
Hiho.. Das Icon Problem habe ich soeben lösen können. Mein Icon verweist auf ein start.sh Script. #!/bin/bash
cd /opt/tvbrowser-2.1/
/usr/lib/j2sdk1.5-sun/bin/java -jar /opt/tvbrowser-2.1/tvbrowser.jar /usr/lib/j2sdk1.5-sun/bin/java -jar ←- ich musst an diese Stelle den vollen Pfad eingeben. ka warum.. mein Java wird duch eingabe von java -version gleich erkannt. Gruß Aaron
|
dentaku
Anmeldungsdatum: 31. Januar 2005
Beiträge: 3777
|
aaron_ hat geschrieben: Hiho.. Das Icon Problem habe ich soeben lösen können. Mein Icon verweist auf ein start.sh Script. #!/bin/bash
cd /opt/tvbrowser-2.1/
/usr/lib/j2sdk1.5-sun/bin/java -jar /opt/tvbrowser-2.1/tvbrowser.jar /usr/lib/j2sdk1.5-sun/bin/java -jar ←- ich musst an diese Stelle den vollen Pfad eingeben. ka warum.. mein Java wird duch eingabe von java -version gleich erkannt. Gruß Aaron
Das könnte daran liegen, dass bei Eingabe von "java" (ohne Pfad) die JRE verwendet wird und Du bei Deinem -jar Aufruf das SDK angibst. Wenn java -version geht, muss auch java -jar ... gehen. Wenn nicht, muss eine Fehlermeldung kommen - und wie lautet diese?
|