2012-11-24 22 views
6

Ich benutze Ubuntu 12.04 (LTS). In meinem Projekt in Eclipse muss ich das Paket com.sun.tools.attach verwenden. Meine JRE-Systembibliothek enthält jedoch nicht die Datei tools.jar, die das Paket enthält.JRE-Systembibliothek fehlt tools.jar

Ich habe versucht, verschiedene JREs und JDKs für Java 6 und 7 zu installieren. Was mir aufgefallen ist, dass einige von ihnen die erwähnte JAR-Datei in ihrem libs-Ordner haben, aber Eclipse es immer noch nicht in meinen Klassenpfad aufnimmt . Die Referenzierung von tools.jar löst das Problem direkt, aber da es sich um ein gemeinsames Projekt handelt, darf der Klassenpfad nicht geändert werden, was für mich keine praktikable Lösung darstellt.

Mein Freund verwendet einen MAC mit der gleichen Version von Eclipse und der Standard-JRE und hat dieses Problem nicht. Was wir herausgefunden haben ist, dass für ihn tools.jar ein Teil von classes.jar ist, was in meinem Setup nicht der Fall ist (ich habe überhaupt keine Klassen.jar).

Was ist Ihrer Meinung nach die Ursache für dieses Problem? Jeder Rat würde sehr geschätzt werden.

Danke Jungs !!!

+0

tools.jar ist Teil des JDK nicht die JRE. –

Antwort

4

Das Problem ist, dass das JDK die Datei tools.jar enthält (keine der JREs).

Es ist einfach, das Problem zu lösen, Sie müssen die Standardlaufzeitumgebung angeben, die entweder für das Projekt oder für den gesamten Arbeitsbereich verwendet wird. Ändern Sie das zu einem der installierten JDKs.

Der einfachste Weg ist wahrscheinlich Fenster -> Einstellungen -> Java -> Installierte JREs, und wählen Sie das JDK anstelle der JRE. Alle Projekte verwenden diese Einstellung standardmäßig.

+0

Es ist wahr, dass es sich um eine tools.jar im libs-Ordner des JDK-Ordners handelt. Leider, als ich es in Eclipse änderte, behob es das Problem nicht. Mache ich etwas falsch? Ich habe Java-6-openjdk benutzt. –

+0

Nur um Dinge zu klären, wann stößt du auf das Problem? Ist es ein Ant-Skript, das fehlschlägt? Hilft es, wenn Sie angeben, dass das JDK für Eclipse anstelle des JRE in der Datei "eclipse.ini" mit dem Schalter "-vm" verwendet werden soll? Auch, [schauen Sie hier] (http://www.gamefromscratch.com/post/2011/11/15/Telling-Eclipse-to-use-the-JDK-instead-of-JRE.aspx). – rlegendi

+0

Es ist kein Ant-Skript. Ich habe versucht, dem Tutorial zu folgen, das du erwähnt hast, aber das hat das Problem nicht gelöst. Ich habe jedoch versucht, die Klasse vom Terminal aus mit dem Befehl javac zu kompilieren. Es konnte das Paket nicht erkennen, bis ich explizit das classpath (-cp) Argument in javac angegeben habe, um auf/usr/lib/jvm/java-6-openjdk/lib/* zu zeigen. Das hat das Problem gelöst. Für mich sieht es so aus, als ob die tools.jar aus irgendeinem Grund nicht von Eclipse übernommen wird, selbst wenn ich die Einstellung Installierte JREs auf java-6-openjdk setze. Vielleicht wird das mehr Licht darauf werfen .. –

0

Ich hatte genau das gleiche Problem auf Ubuntu 12.10 und in meinem Fall geschafft, es zu lösen, indem ich einen Verweis auf den aktuellen Java-Binärdateien-Ordner zu meiner PATH-Variable hinzufüge.

PATH="$PATH:/usr/local/java/current/bin" 

Oder

PATH="$PATH:$JAVA_HOME/bin" 

Gerade entweder .profile oder .bash_profile in Ihrem /home/<user> Ordner bearbeiten und Sie sollten in Ordnung sein. Wenn diese Dateien nicht existieren, erstellen Sie einfach eine von ihnen.

Hinweis: Stellen Sie sicher, dass Ihr JDK verwenden und JRE nicht

Verwandte Themen