2008-10-26 28 views
4

我一直在Macintosh(10.5.5)上從命令行運行內置的Ant,並且Mail任務遇到了一些問題。運行郵件任務生成以下消息:在Macintosh上缺少ant-javamail.jar文件

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

這很可能是由於在/ usr /共享/螞蟻/ lib目錄中缺少的螞蟻javamail.jar文件。我在這個目錄中看到一個「ant-javamail-1.7.0.pom」文件,但沒有看到適當的jar文件。任何人都知道爲什麼這個jar文件可能會丟失,解決問題的最好方法是什麼?

回答

2

這裏就是我最後做來解決這個問題:從http://ant.apache.org/

    1. 下載最新版本的Ant「內置「Ant安裝在/ usr/share/ant;我並不想覆蓋的版本,所以我提取的新的,完整版到/ usr/當地 /share/apache-ant-1.7.1/
    2. 作爲npellow指出,在Mac沒有按」噸包括的mail.jar或的activation.jar - 這些文件可以被下載,並從分別JavaMail APIJavaBeans Activation Framework提取並複製到新螞蟻 lib文件夾(同一文件夾中的所有螞蟻 - *。jar文件)
    3. 的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和郵件任務工作得很好。

  • 1

    從以下網址下載Java郵件庫:http://java.sun.com/products/javamail/。 您還需要http://java.sun.com/products/javabeans/glasgow/jaf.html

    Ant的可選任務所需的所有外部依賴項的列表在此列出http://ant.apache.org/manual/index.html

    另一種方式來獲得螞蟻的依賴非常容易,是運行:

    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

    不幸的是,Mac附帶的默認ant分佈似乎沒有包含fetch.xml文件 - 所以上述的「ant -f fetch all」命令將不起作用。 – Ken 2008-10-27 12:07:26

    0

    我也有這方面的工作方式略有不同:

    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安裝程序的麻煩。