ANT_HOME не соответствует ant-версии

2675
Frank Harris

Я начал с попытки запустить ant в java-программе в терминале RH.

BUILD FAILED /home/phuong3/soar/soarRepos2/soar/tools/trunk/build.xml:187: Compiler Adapter 'javac1.6' can't be found.  Total time: 0 seconds 

Мне сказали, что эта проблема будет исправлена, если я обновлю ant с 1.6.5 до 1.7.1. 1.7.1 уже существует в системе по адресу /opt/apache-ant-1.7.1/bin. Поэтому я изменил ANT_HOME на этот каталог и добавил его в PATH. Сейчас состояние таково:

[**** trunk]$ echo $ANT_HOME /opt/apache-ant-1.7.1/bin [**** trunk]$ ant -version Apache Ant version 1.6.5 compiled on August 30 2006 

Так что я, по-видимому, пропускаю очень фундаментальный шаг. Можете ли вы сказать мне, что это?

РЕДАКТИРОВАТЬ: Bump. Я действительно мог бы использовать подсказку на это. Могу ли я предоставить больше информации? По сути, мне нужно знать, что после того, как в системе уже есть двоичные файлы Ant 1.7.1 и ANT_HOME настроен на этот каталог, что еще мне нужно сделать, чтобы 1.7.1 была используемой версией?

1
Старая версия удалена из PATH? он все еще может сначала найти эту версию. MaQleod 12 лет назад 0
Ааа. PATH включает в себя / usr / bin и `which ant '-> / usr / bin / ant. Итак, проблема определена, но как мне ее исправить? Очевидно, я не хочу удалять / usr / bin из PATH, верно? Frank Harris 12 лет назад 0
Вы должны создать абсолютный путь, используя `$ ANT_HOME / ant`, если он определен, и не полагаться на правильный` $ PATH`. Daniel Beck 12 лет назад 0

2 ответа на вопрос

1
Frank Harris

Решил это сам. Объяснение в меру своих возможностей: поскольку, когда я набирал текст ant, ОС перебирала PATH до тех пор, пока не нашла каталог, содержащий исполняемый файл с именем ant, первый найденный файл оказался правильным. Тот, кого я хотел, чтобы это было ПОСЛЕДНО на пути Так что в bash_profile, а export PATH=$PATH:/opt/apache-ant-1.7.1/binне я export PATH=/opt/apache-ant-1.7.1/bin:$PATH. Теперь желаемая версия ant появляется первой и исполняется.

0
Steve Bosman

I've just encountered the same symptoms, but with a different cause.

At some point in the past I must have placed a copy of ant-1.6.5.jar in ~/.ant/lib. This means ant always tried to use that jar. Solution was to remove the jar from ~/.ant/lib.