2009-12-18 79 views
0

我剛剛完成了JavaFX中的一個小應用程序,並開始考慮如何分發它。 我想這將是一個簡單的事情,擊中生成按鈕,並使用其中一個生成的文件。分發/部署JavaFX應用程序

出於某種原因,構建產生:這抱怨doubleclicked當它不能找到它的主類

  1. Jar文件。
  2. jnlp文件失敗,說「無法啓動應用程序」。
  3. 一個html文件,在我的瀏覽器中打開時,會永久顯示一個旋轉的java徽標。

所有這一切都使我相信,有什麼毛病我的Java設置。我怎樣才能把這個項目打包出門?

我想要一個單獨的文件,可以下載/通過電子郵件發送,雙擊和運行沒有大驚小怪。簡而言之,無論如何簡單。 :)我很確定你可以用Jar文件做到這一點,但是我用Netbeans和它的構建命令得到的結果是非常荒謬的。

重要細節:我正在運行Ubuntu Karmic。我已經切換到了Sun Java而不是OpenJDK(這看起來很像JavaFX),但我認爲firefox仍在使用OpenJDK。

回答

1

過去,當使用Netbeans創建JavaFX時,我只使用了它創建的jar文件,而不是jnlp和html(如果內存正確地爲我提供服務,它指向本地主機)。據說,我手工創建.jnlp發佈到我的服務器。 下面是.jnlp我在www.ericonjava.com

<?xml version="1.0" encoding="UTF-8"?> 
<jnlp spec="1.0+" codebase="http://www.ericonjava.com/" href="bubblebreaker/bubblebreaker.jnlp"> 
<information> 
    <title>Bubble Breaker</title> 
    <vendor>www.ericonjava.com</vendor> 
    <homepage href="http://www.ericonjava.com"/> 
    <description>Bubble Breaker</description> 
    <offline-allowed/> 
</information> 
    <j2se href="http://java.sun.com/products/autodl/j2se" version="1.6+"/> 
<property name="jnlp.packEnabled" value="true"/> 
    <extension name="JavaFX Runtime" href="http://dl.javafx.com/1.1/javafx-rt.jnlp"/> 
     <jar href="bubblebreaker/BubbleBreaker.jar" main="true"/> 
</resources> 
<application-desc main-class="bubblebreaker.Test"/> 

使用副本的重要標記元素是:

  1. 的codebase = 「http://www.ericonjava.com」 ...這應該是你的網址
  2. href =「bubblebreaker/bubblebreaker.jnlp ...你的服務器上的相對路徑爲.jnlp
  3. jar href =」bubblebr埃克/ BubbleBreaker.jar」 ...
  4. 應用遞減主級=您的服務器上的相對路徑的.jar‘bubblebreaker.Test’......包名和類名

此外,建造時在NetBeans中...確保右鍵單擊項目選項卡並轉到屬性部分以設置像pack200 enabled/Draggable Applet等屬性。

我希望這會有所幫助。