2011-11-18 10 views
5

javafx 2.0アプリケーションをデプロイするためのjnlpファイルがありますが、javafxランタイム(マシン上のjvmに応じて32ビットまたは64ビット)を使用していることを確認するにはどうしたらいいですか?アプリケーションを実行します。ユーザは、JavaFXは、現在インストールされていないと仮定すると32ビット版と64ビット版のjnlpを使ってデスクトップJavaFX 2.0アプリケーションを正しく展開するには?

、私は32ビット、64ビットのいずれか、または両方JREのと64ビットマシンで、主に直面していた問題は、次のとおりです。

1) Javafxスイング展開ガイドには、<jfx:javafx-runtime version />タグを使用して適切なjfxランタイムをダウンロードすると記載されていますが、1.7より下のJREではこのタグ/名前空間は認識されません。

2)32ビットjreが64ビットマシンにインストールされている場合、アプリケーションを「Program Files(x86)」フォルダにインストールするには、32ビットjavafxランタイムをダウンロードして使用します。

3)64ビットマシンに64ビットのjreがインストールされている場合、アプリケーションを "Program Files"フォルダにインストールするには、64ビットjavafxランタイムをダウンロードして使用します。ここで

は私のjnlpファイルが現在どのように見えるかです:

<?xml version="1.0" encoding="UTF-8"?> 
<jnlp spec="1.0+" codebase="file:///C%3A/Program%20Files/HP/Pulse/PulseLite"href="iMonLauncher.jnlp"> 
    <information>  
     <title>iMonLauncher</title> 
     <vendor>Administrator</vendor> 
     <homepage href="file:///C%3A/Program%20Files/HP/Pulse/PulseLite"/>  
     <description>iMonLauncher</description> 
     <offline-allowed/>  
    </information> 
    <security>  
     <all-permissions/> 
    </security> 
    <resources> 
     <j2se version="1.6+" href="http://java.sun.com/products/autodl/j2se"/> 
     <jar href="iMon.jar" size="428419"/>   
     <jar href="lib/ibase-core.jar" size="197029"/> 
     <jar href="lib/ibase-fx.jar" size="210175"/> 
     <jar href="lib/imonDB.jar" main="true" size="156616"/> 
     <jar href="lib/imon-service.jar" main="true" size="73190"/> 
     </resources> 
    <application-desc name="iMon" main-class="imon.Main" > 
    </application-desc> 
    <update check="always"/> 

コードベースがアーキテクチャに応じて、正しいプログラムファイルフォルダを指すように、自動的に変更されます。

ありがとうございます!

答えて

1

jnlpにxmlns:jfx名前空間がありません。

<jnlp spec="1.0" xmlns:jfx="http://javafx.com" href="iMonLauncher.jnlp"> 

通常のJavaがインストールされ、jnlpファイルをクリックすると、FXの自動ダウンロードメッセージが表示されます。それはどのJavaが使用されているかを調べ、適切なjavafxバージョンをダウンロードしてインストールします。

jnlp response

+0

私は 'のxmlns使用:私のJNLPでjfx'名前空間を、私はこの名前空間のみJRE 1.7以降ではなくJREの以前のバージョンで認識されていることと思います。したがって、ユーザーがjre 1.6+を持っている場合、この名前空間は完全に無視され、javafxはシステムにインストールされず、アプリケーションが起動しません。 – Saurabh