2009-11-21 60 views
0

我的程序有問題。我在Netbeans中開發,當我運行該程序時,它工作正常。我建立它,創建一個* .jar文件,並在我的JNLP文件中更新它。JNLP中的Javax.mail

這裏來的麻煩。因爲我在我的程序中使用了javax.mail。*,所以jnlp包忽略了它的所有部分。

只是要清楚,我正在處理郵件客戶端。現在我可以查看收件箱中的郵件數量。這是程序在JNLP中忽略的內容。

感謝您的任何幫助。

回答

1

合併一個javamail實現。從許可的角度來看,Apache Geronimo實現很方便。也就是說,得到一個JAR文件,其中包含javax.mail的實現(除了內置於j2ee的實現)並將其打包到您的JNLP包中。

+0

我該怎麼做?對不起,我是JAVA的新手,但這是我的學校考試。 – Hectai 2009-11-22 13:22:27

+0

好吧,你下載它,將它添加到你的類路徑中,然後你需要做一些我一無所知的事情:將它包含在JNLP包中。 – bmargulies 2009-11-22 13:45:49

1

我認爲,所有你需要做的是簽署Java郵件實現(在本機或一些第三方)JAR的,將它們添加到您的JNLP文件:

<resources> 
    <jar href="mail-jar1"/> 
    <jar href="mail-jar2"/> 
    <!-- more --> 
</resources> 

...,然後拖放連同您的主要JAR到您選擇的Web服務器。

0

爲了讓你的程序訪問網絡,並與郵件服務器通信,就需要簽署所有的罐子,並在JNLP文件中包含此代碼:

<security> 
    <all-permissions/> 
</security> 

如果使用Java EE的郵件執行,那麼你需要在你的庫中有兩個jar文件:

<resources> 
    <jar href="lib/activation.jar"/> 
    <jar href="lib/mail.jar"/> 
</resources> 

我喜歡把所有的庫JAR文件的一個單獨的文件夾,這是正常的NetBeans爲你做的時候它建立你的應用程序(查看dist文件夾)。

你還問:「你能否給我一種方法來在我的電腦上運行這個程序,而無需netbeans和命令提示符?」

這幾乎是jnlp的全部觀點。您可以從網絡瀏覽器啓動該程序。 Java教程包含許多這樣的例子: 例如:JButton example

如果這是您要部署應用程序的方式,你可以閱讀the Web Start developers guide