Ant нуждается в tools.jar и не может его найти
Я собираю среду разработки для Java-программы, и после первой попытки моих сценариев сборки Ant я получил эту ошибку:
Unable to locate tools.jar. Expected to find it in /usr/lib/jvm/java-6-openjdk/lib/tools.jar
Хотя путь к jdk верен, tools.jar действительно там не было. Это на самом деле должно быть, или я неправильно установил некоторые настройки / настройки?
10 ответов
Это там на моей машине. Я использую Sun JDK 1.6.0_21 в Windows XP SP3.
Вы уверены, что у вас есть JDK? Возможно ли, что у вас есть только JRE?
Кажется, вы можете установить Java в /usr/lib/jvm/java-6-openjdk, но иметь только JRE, а не JDK. Это исправило это для меня:
sudo apt-get install openjdk-6-jdk
Примечание: при установке CentOS / RHEL java-1.x.0-openjdk
не хватит. Также установите java-1.x.0-openjdk-devel
,
apt install defalut-jdk # this doesn't contain some file, like tools.jar...
apt install openjdk-8-jdk # this contains all files.
На Debian после установки Ant с apt-get install ant
Я столкнулся с той же ошибкой при запуске:
Unable to locate tools.jar. Expected to find it in /usr/lib/jvm/java-6-openjdk-amd64/lib/tools.jar
На самом деле, нет упоминания о каких-либо tools.jar
где-нибудь в /usr/lib
, хотя /usr/lib/jvm/java-6-openjdk-amd64
сам существует.
https://packages.debian.org/search?searchon=contents&keywords=java-6-openjdk-amd64%2Flib%2Ftools.jar
Согласно поиску выше, java-6-openjdk-amd64/lib/tools.jar
кажется частью openjdk-6-jdk
, который действительно не был установлен с помощью ant (поскольку он помечен только как предложено ( https://packages.debian.org/wheezy/ant)).
apt-get install openjdk-6-jdk
На Ubuntu мне нужно установить JDK sudo apt-get install openjdk-7-jdk
Попробуйте следующее:
% sudo apt-get install sun-java6-jdk
% sudo update-альтернативы --config java
выберите опцию, которая имеет путь
/ USR / Библиотека / JVM / Java-6-ВС / JRE / бен / Java
У меня работало на убунту 10.4
Вы также можете попытаться поставить свой JAVA_HOME, как показано ниже:
% sudo export JAVA_HOME = $ (ссылка для чтения -f /usr/bin/javac | sed "s:/bin/javac::")
Даже если у вас установлен jdk, вам нужно будет перенаправить JAVA_HOME, чтобы указать на него.
Вот один странный трюк, который вы можете применить в своем.profile для правильной настройки JAVA HOME, независимо от того, какой у вас java:
export JAVA_HOME=$(dirname $(dirname $(readlink -e /usr/bin/java)))
# Test for jdk installed above jre
if [ -x $JAVA_HOME/../bin/java ]; then export JAVA_HOME=$(dirname $JAVA_HOME); fi
Установка jdk-6u45-linux-x64.bin (с сайта oracle.com) через unzip не приводит к появлению tools.jar. Я предполагаю, что файл создается скриптом "make-jpkg". Как только я это сделал и установил получившийся файл.deb, все было хорошо. Я действительно ненавижу адвокатов оракула.
В Ubuntu я исправил эту проблему, установив пакет
openjdk-7-jre-lib
tools.jar появился после этого.
(Я знаю, что это старый пост, но прокомментируйте в надежде, что он будет полезен для тех, кто ищет ответ, как я был сегодня.)