2012-11-24 14 views
6

Używam Ubuntu 12.04 (LTS). W moim projekcie w Eclipse potrzebuję użyć pakietu com.sun.tools.attach. Jednak moja biblioteka systemowa JRE nie zawiera pliku tools.jar, który zawiera pakiet.Brak biblioteki narzędzi JRE tools.jar

Próbowałem instalować różne JRE i JDK dla obu wersji Java 6 i 7. Zauważyłem, że niektóre z nich mają wspomniany plik jar w swoim folderze libs, ale Eclipse wciąż nie dołącza go do mojej ścieżki klasy po wybraniu środowiska JRE . Odwołanie tools.jar bezpośrednio rozwiązuje problem, ale ponieważ jest to projekt współdzielony, nie wolno mi modyfikować ścieżki klasy, a zatem nie jest to rozwiązanie opłacalne dla mnie.

Mój przyjaciel używa adresu MAC z tą samą wersją środowiska Eclipse i domyślnego środowiska JRE, a ten problem nie występuje. Odkryliśmy, że dla niego tools.jar jest częścią pliku classes.jar, co nie ma miejsca w moim setupie (nie mam klasy classes.jar).

Jak myślisz, co może być przyczyną tego problemu? Każda rada byłaby bardzo doceniana.

Dzięki chłopaki !!!

+0

Tools.jar jest częścią JDK, a nie JRE. –

Odpowiedz

4

Problem polega na tym, że plik JDK zawiera plik tools.jar (żaden z tych elementów JRE nie działa).

Łatwo jest rozwiązać problem, trzeba określić domyślne środowisko wykonawcze, które będzie używane w projekcie lub w całym obszarze roboczym. Zmień to na dowolny z zainstalowanych JDK.

Najprostszym sposobem jest prawdopodobnie przejście do okna Okno -> Preferencje -> Java -> Zainstalowane JRE i wybranie JDK zamiast JRE. Wszystkie projekty używają tego ustawienia domyślnie.

+0

To prawda, że ​​jesteś plikiem tools.jar wewnątrz folderu libs folderu JDK. Niestety, kiedy zmieniłem go w Eclipse, nie rozwiązało to problemu. czy robię coś źle? Użyłem java-6-openjdk. –

+0

Po prostu, aby wyjaśnić, kiedy napotkasz problem? Czy to nie działa skrypt Ant? Czy pomocne jest określenie JDK dla środowiska Eclipse zamiast JRE w pliku 'eclipse.ini' przy użyciu przełącznika' -vm'? Również [spójrz tutaj] (http://www.gamefromscratch.com/post/2011/11/15/Telling-Eclipse-to-use-the-JDK-instead-of-JRE.aspx). – rlegendi

+0

To nie jest skrypt Ant. Próbowałem postępować zgodnie z tutorialem, o którym wspomniałeś, ale to nie rozwiązało problemu. Jednak próbowałem skompilować klasę z terminala za pomocą komendy javac. Nie można rozpoznać pakietu, dopóki nie sprecyzuję argumentu classpath (-cp) w javac, aby wskazać na/usr/lib/jvm/java-6-openjdk/lib/*. To rozwiązało problem. Dla mnie wygląda na to, że tool.jar nie jest z jakiegoś powodu pobierany przez Eclipse nawet po ustawieniu Zainstalowanych JRE na java-6-openjdk. Może to rzuci na to więcej światła ... –

0

Miałem dokładnie taki sam problem w Ubuntu 12.10 iw moim przypadku udało mi się go rozwiązać, dodając odniesienie do bieżącego katalogu binarnego Java do mojej zmiennej PATH.

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

Albo

PATH="$PATH:$JAVA_HOME/bin" 

Wystarczy edytować albo .profile.bash_profile lub w folderze /home/<user> i powinno być w porządku. Jeśli te pliki nie istnieją, po prostu utwórz jeden z nich.

Uwaga: upewnij się, że używasz JDK, a nie JRE

Powiązane problemy