我一直在Macintosh(10.5.5)的命令行中运行内置Ant,并且遇到了 Mail 任务的问题。运行Mail任务会生成以下消息:
[mail] Failed to initialise MIME mail: org.apache.tools.ant.taskdefs.email.MimeMailer
这很可能是由于/ usr / share / ant / lib目录中缺少ant-javamail.jar文件。我在这个目录中看到了一个“ant-javamail-1.7.0.pom”文件,但没有相应的jar文件。任何人都知道为什么这个jar文件可能会丢失,解决问题的最佳方法是什么?
答案 0 :(得分:2)
以下是我最终解决问题的方法:
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,而Mail任务也可以正常运行。
答案 1 :(得分:1)
从http://java.sun.com/products/javamail/下载Java Mail库。 您还需要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)
答案 2 :(得分:0)
我的工作方式略有不同:
~/.ant/lib
。apache-ant-1.7.0/lib/ant-javamail.jar
文件复制到该目录中。这只解决了单个用户帐户的问题,但这对我的目的来说很好,并且省去了在我的计算机上安装两个单独的ant的麻烦。