Ant + Vista 64: «Невозможно найти tools.jar» (конфликт jre / jdk?) - PullRequest
17 голосов
/ 07 декабря 2010

Я пытаюсь использовать ant в среде Vista 64 для создания некоторых файлов docbook / xml.

Однако я не могу разрешить это сообщение об ошибке. У кого-нибудь есть предложения?

C: \ Users \ Robert Admin> муравей Невозможно найти tools.jar. Ожидается найти его в C: \ Program Files \ Java \ jre6 \ li б \ tools.jar Buildfile: build.xml не существует! Сборка не удалась

Поглядывая вокруг, я вижу, что это сообщение tools.jar является результатом того, что муравей не может найти jdk. Фактически, C: \ Program Files \ Java \ jre6 \ li b \ tools.jar - это JRE, установленный с другой программой (наверное). Tools.jar находится здесь: C: \ Program Files \ Java \ jdk1.6.0_22 \ lib

Я не могу сказать, чтобы Ant смотрел путь JDK, только путь JRE, который уже был там. (Судя по документации Ant, кажется, что JRE недостаточно).

C:\Users\Robert Admin>echo %JAVA_HOME%

C:\Program Files\Java\jdk1.6.0_22\bin

C:\Users\Robert Admin>ant

Unable to locate tools.jar. Expected to find it in C:\Program Files\Java\jre6\li
b\tools.jar
Buildfile: build.xml does not exist!
Build failed

C:\Users\Robert Admin>echo %ANT_HOME%

I:\My Documents\1latest\ant    
C:\Users\Robert Admin>where java

C:\Windows\System32\java.exe
C:\Program Files (x86)\Java\jre6\bin\java.exe
C:\Program Files\Java\jdk1.6.0_22\bin\java.exe

C:\Users\Robert Admin>java -version
java version "1.6.0_22"
Java(TM) SE Runtime Environment (build 1.6.0_22-b04)
Java HotSpot(TM) 64-Bit Server VM (build 17.1-b03, mixed mode)

Обновление № 1 . Я попытался удалить 64-битный JDK и установить 32-битный JDK. Результат:

C:\Users\Robert Admin>java -version
java version "1.6.0_22"
Java(TM) SE Runtime Environment (build 1.6.0_22-b04)
Java HotSpot(TM) 64-Bit Server VM (build 17.1-b03, mixed mode)

C:\Users\Robert Admin>ant
Unable to locate tools.jar. Expected to find it in C:\Program Files\Java\jre6\li
b\tools.jar
Buildfile: build.xml does not exist!
Build failed
C:\Users\Robert Admin>echo %JAVA_HOME%
C:\Program Files (x86)\Java\jdk1.6.0_22\bin

Ответы [ 14 ]

20 голосов
/ 03 июня 2011

У меня была такая же проблема, потому что мой путь JAVA_HOME был установлен неправильно (как и OP) Он был установлен в корзину JDK.

Так было установлено: C: \ Program Files (x86) \ Java \ jdk1.6.0_25 \ bin

Когда должно быть установлено: C: \ Program Files (x86) \ Java \ jdk1.6.0_25

Обновление этой переменной среды исправило ее для меня.

6 голосов
/ 13 ноября 2011

Я решил проблему, создав системную переменную JAVA_HOME для C: \ Program Files \ Java \ jdk1.6.0_25.Не ставьте точку с запятой после него.Сначала я поставил точку с запятой, и произошла ошибка.Я удалил точку с запятой, и это сработало.

6 голосов
/ 05 марта 2011

У меня была эта проблема на 64-битной машине с Windows 7 и Ant 1.8.2. Решением было использовать инструменты администратора, упомянутые #bigfix, для установки переменных среды. Следуйте инструкциям по установке Ant для Windows. Но не устанавливайте путь как% ANT_HOME% \ bin. Вместо этого используйте явный путь, такой как C: \ jdk-1.5.0.05 \ bin.

Мой первый тест не удался, потому что мое командное окно уже было открыто и использовало старые env vars. Закройте его и откройте новый. Тогда попробуйте тест. У меня это сработало.

6 голосов
/ 17 декабря 2010

Я исправил это, создав JAVA_HOME в переменных computer-> properties-> env. Ручная настройка в командной строке не сработала -b

5 голосов
/ 09 декабря 2012

Все, что вам нужно, это установить путь JAVA_HOME в вашей среде.В Windows 7 перейдите в «Свойства системы -> Дополнительно -> Переменные среды» и добавьте JAVA_HOME.Значение в моем случае было:

C: \ Program Files \ Java \ jdk1.7.0_07

Это решило проблему для меня.Эта переменная указывает Ant на правильное расположение Java.

4 голосов
/ 25 октября 2011

Я знаю, что эта ветка - какая-то старая ... но я столкнулся с ней только сейчас ... То, что я сделал, - скопировал этот tools.jar в папку jre / lib и работал нормально.

Я нахожусь в среде Windows 7, JDK 1.7 и пытаюсь установить ant 1.8.2

Спасибо

3 голосов
/ 01 декабря 2011

вы можете использовать java в каталоге C: \ Windows \ system32 вместо установленного JDK.Я установил переменную окружения JAVA_HOME и поместил% JAVA_HOME% \ bin в начале моего пути, а проблемы - в отсутствие.

2 голосов
/ 07 декабря 2010

почему бы вам не попробовать 32-битную версию. может быть проблема между двумя версиями, которые вы установили: 32 и 64. Попробуйте 32-битную версию, чтобы не видеть 64-битные версии.

это должно решить твою проблему.

1 голос
/ 14 июля 2012

У меня была эта проблема со Средой как:

  • Windows 7
  • Java-версия jdk1.6.0_33
  • apache-ant-1.6.5

Я получал сообщение о сборке муравья как "Unable to locate tools.jar. Expected to find it in E:\Java\jre6\lib\tools.jar", где мой JDK был установлен в E:\Java\jdk1.6.0_33\ и JRE в E:\Java\jre6\

Причина:

Моя проблемабыло то, что у меня ANT_HOME было установлено дважды в системной переменной окружения PATH в двух разных местах (имеется в виду некоторые другие переменные между ними). ​​

Решение:

Я удалил переменную ANT_HOMEэто указало на неправильное местоположение, и все работало хорошо со мной.

0 голосов
/ 11 ноября 2013

Я собираюсь добавить еще одну проблему, которая у меня была с этим.

Кстати, ответ здесь работал и для меня.Я должен был указать мой каталог Java на конкретную версию SDK.Большое спасибо.

Но я добавлю, что мне нужно было установить SDK как администратор, или он не извлекал tools.jar.Я нашел этот ответ в другом месте, и я надеюсь, что это поможет кому-то повторить его здесь.

...