#macos #ant #ftp
#macos #ant #ftp
Вопрос:
Всем привет. В настоящее время я пытаюсь настроить поддержку FTP для моей установки ANT (версии 1.8.2) на OSX (Snow Leopard 10.6.7) и я как бы натыкаюсь на стену. Я прочитал документацию по Apache.org рассказываю об установке новых задач, а также о нескольких статьях, разбросанных по всему Интернету, и, похоже, я не могу заставить эту штуку работать.
Все статьи, которые я прочитал, относятся к двум конкретным файлам JAR, которые не поставляются в комплекте с установкой ANT по умолчанию:
- Commons-Net (2.2.0)
- Джакарта ОРО (2.0.8)
По-видимому, Jakarta ORO больше не является активным проектом Apache, но я смог найти архивированную версию.
Затем, по-видимому, все, что мне нужно сделать, это поместить предварительно скомпилированные файлы JAR в папку lib относительно базового каталога установки ANTs. Я выполнил следующую команду:
ant -diagnostics | grep ftp.*Available
И я получаю следующий ответ:
ftp : Not Available (the implementation class is not present)
Никакой радости.
Не уверен, что еще можно сделать. Из того, что я прочитал, я выполняю соответствующие шаги, чтобы заставить эту штуку работать.
Итак, я провел несколько часов должной проверки, и у меня не осталось выбора, кроме как обратиться ко всем вам за помощью. Ниже приведена прямая ссылка на вывод переключателя -diagnostics. Надеюсь, кто-нибудь сможет пролить свет на то, что я здесь делаю неправильно.
http://www.thedrunkenepic.com/uploads/antDiagnostics.txt
Как всегда, я благодарен за любую помощь, которую я могу получить!
ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Я использую OSX уже в течение последних нескольких месяцев, и хотя я чувствую себя довольно комфортно при использовании терминала, я все еще относительно новичок. Поэтому, пожалуйста … будьте нежны. 🙂
Ответ №1:
Если вы не хотите повторно устанавливать Ant только для добавления зависимости, вы можете сделать это:
- Скачать ant-commons-net.jar для имеющейся у вас версии Ant (ссылка приведена для Ant 1.8.2, который является Ant, включенным в OS X Lion).
- Поместите jar в
~/.ant/lib/
(создайте этот каталог, если у вас его нет). - Готово!
Ответ №2:
Версия ant, поставляемая с OSX, не включает ни одной из дополнительных задач — не только зависимости (например, commons-net), но и файлы jar, которые реализуют сами задачи, отсутствуют. Я думаю, что при компиляции ant эти задачи создаются только в том случае, если зависимости присутствуют на компьютере (поскольку они ссылаются на них), а инженер Apple (или машина сборки), которая скомпилировала версию mac ant, не имела зависимостей.
Например:
~ $ ls /usr/share/java/ant-1.8.2/lib/ant-commons-net.jar
ls: /usr/share/java/ant-1.8.2/lib/ant-commons-net.jar: No such file or directory
но (у меня есть ant, загруженный из Apache, установленный локально в моем ~/tools
каталоге):
~ $ ls tools/apache-ant-1.8.2/lib/ant-commons-net.jar
tools/apache-ant-1.8.2/lib/ant-commons-net.jar
и:
~ $ jar -tf tools/apache-ant-1.8.2/lib/ant-commons-net.jar | grep FTPTask.class
org/apache/tools/ant/taskdefs/optional/net/FTPTask.class
Вероятно, вам лучше всего получить версию ant напрямую с сайта Apache и установить ее где-нибудь локально.
Комментарии:
1. Я пошел дальше и установил и собрал последнюю версию с веб-сайта Ant project, и она работает безупречно. Спасибо за всю помощь! По крайней мере, я узнал чертовски много нового об OSX! 🙂