Отсутствует файл ant-javamail.jar на Macintosh - PullRequest
4 голосов
/ 26 октября 2008

Я запускаю встроенный Ant из командной строки на Macintosh (10.5.5) и столкнулся с некоторыми проблемами с задачей Mail . При запуске задачи Почта выдается следующее сообщение:

[mail] Failed to initialise MIME mail: org.apache.tools.ant.taskdefs.email.MimeMailer

Скорее всего, это связано с отсутствием файла ant-javamail.jar в каталоге / usr / share / ant / lib. Я вижу файл "ant-javamail-1.7.0.pom" в этом каталоге, но не соответствующий файл jar. Кто-нибудь знает, почему этот jar-файл может отсутствовать и как лучше всего решить проблему?

Ответы [ 3 ]

2 голосов
/ 05 ноября 2008

Вот что я решил сделать для решения проблемы:

  1. Скачал последнюю версию Ant с http://ant.apache.org/
  2. «Встроенный» Ant устанавливается в / usr / share / ant; Я не хотел перезаписывать эту версию, поэтому я извлек новую полную версию в /usr/local/share/apache-ant-1.7.1/
  3. Как указывает npellow , компьютер Mac не содержит mail.jar или активации.jar - эти файлы можно загрузить и извлечь из JavaMail API и JavaBeans Activation Framework соответственно и скопирован в папку new ant lib (та же папка, что и все файлы ant - *. Jar)
  4. Команда ant (/ usr / bin / ant) ​​является символической ссылкой на / usr / share / ant / bin / ant; Я обновил эту ссылку, чтобы указать на новую версию (ln -s /usr/local/share/apache-ant-1.7.1/bin/ant /usr/bin/ant)

Если по какой-то причине вам нужно снова установить старую версию Ant по умолчанию, просто используйте
ln -s /usr/share/ant/bin/ant /usr/bin/ant

Шаги 2-4 были выполнены в командной строке от имени пользователя root. Вот и все - на Mac теперь установлена ​​последняя версия Ant для complete , и задача Mail прекрасно работает.

1 голос
/ 27 октября 2008

Загрузите библиотеки Java Mail с: http://java.sun.com/products/javamail/. Вам также понадобится http://java.sun.com/products/javabeans/glasgow/jaf.html

Список всех внешних зависимостей, необходимых для необязательных задач Ant, приведен здесь http://ant.apache.org/manual/index.html.

Еще один способ очень легко получить зависимости для Ant - запустить:

ant -f fetch all

из $ ANT_HOME. Вы также можете запустить -projecthelp для получения полного списка целей:

all         load all the libraries
 antlr       load antlr libraries
 bcel        load bcel libraries
 beanshell   load beanshell support
 bsf         load bsf libraries
 debugging   internal ant debugging
 get-m2      Download the Maven2 Ant tasks
 jdepend     load jdepend libraries
 jruby       load jruby
 junit       load junit libraries
 jython      load jython
 logging     load logging libraries
 networking  load networking libraries (commons-net; jsch)
 regexp      load regexp libraries
 rhino       load rhino
 script      load script languages
 xerces      load an updated version of Xerces
 xml         load full XML libraries (xalan, resolver)
0 голосов
/ 13 мая 2009

У меня тоже получилось немного по-другому:

  1. Создан каталог ~/.ant/lib.
  2. Загрузил JavaMail API и скопировал файлы jar в этот каталог.
  3. Загрузил JavaBeans Activation Framework и скопировал файлы jar в этот каталог.
  4. Скачал Apache Ant 1.7.0 (не последняя, ​​соответствует установленной версии) и скопировал файл apache-ant-1.7.0/lib/ant-javamail.jar в этот каталог.

Это решает проблему только для одной учетной записи пользователя, но это хорошо для моих целей и избавляет меня от необходимости иметь две отдельные установки ant на моей машине.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...