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 ]

0 голосов
/ 17 июля 2013

Спасибо, это также работает в Windows 8, x64, с использованием Java x64.

Я не хотел добавлять весь этот мусор в настройки моей системы, поэтому я создал командный файл, который я запускалпрежде чем я хотел использовать Android SDK.Вот оно

    set ANDROID_SDK_PT=C:\Program Files\eclipse\sdk\platform-tools
    set ANDROID_SDK_TOOLS=C:\Program Files\eclipse\sdk\tools
    set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_25
    set ANT_HOME=C:\apache-ant
    set PATH=%PATH%;%ANDROID_SDK_PT%;%ANDROID_SDK_TOOLS%;%JAVA_HOME%;%ANT_HOME%\bin
0 голосов
/ 16 мая 2013

Я получаю, что «C: \ Program» не распознается как внутренняя или внешняя команда, ошибка работоспособной программы или пакетного файла при запуске% ANT_HOME% \ bin \ ant.bat

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

FIX: "% ANT_HOME% \ bin \ ant.bat" --NOT--% ANT_HOME% \ bin \ ant.bat

Надеюсь, это поможет!

0 голосов
/ 01 апреля 2013

У меня такая же проблема.Успешно решено.

  1. Проверьте свою системную информацию, которую видит Дженкинс: your_jenkins_url / systemInfo
  2. Найдите переменную JAVA_HOME в разделе «Переменные среды».В моем случае я не смог его найти.

Так что, если вы не видите эту переменную, это означает, что ваша переменная не была установлена ​​для пользователя, под которым работает jenkins.Вам нужно поместить «JAVA_HOME» в раздел «системные переменные» переменных среды, а не в «пользовательские переменные».

перезапустите jenkins после этого, и ваша проблема должна быть исправлена.

0 голосов
/ 23 января 2013

Однажды я столкнулся с той же проблемой, что и ant setup. Акция такая же, как

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. 

Я удалил все пути jre в среде %PATH% и добавил путь к jdk bin. Наконец я набираю %ANT_PATH%/bin вместо %ANT_PATH%\bin. Это работает.

Может помочь.

...