それはおそらく、あなたを助けるために少し遅れてですが、私はケースの誰でOSGi環境内でのJavaFXを有効にする簡単な方法を文書化したいと思い、私のような、まだトラブルそれをやっていた....
つまり、JavaFXが必要なクラスをロードして使用できるようにする必要があります(JavaFXはJREの内部を使用するため、実際にバンドルするのが難しい)ので、本当に必要なのは、OSGiにアクセスできるようにすることですboostering classpath ...
私は専門家ではありませんが、このブログでは、SpringSourceのCostin Leauが、(JavaFXだけでなく、システムクラスローダーへのフルアクセスを想定している)違う方法:
org.osgi:
http://blog.springsource.org/2009/01/19/exposing-the-boot-classpath-in-osgi/
私は基本的にあなたのOSGiコンテナの設定ファイルでのOSGi-指定されたプロパティ(!任意の実装に固有ではない)を設定する意味のオプションAを、使用することにしました.framework.system.packages.extra = javafx.application;バージョン= 0.0.0 ...
あなたは、この要旨にプロパティの値全体を見ることができる私はクレアをしましたテッド:
https://gist.github.com/renatoathaydes/5021107
私は基本的にどの自動的に、JavaFXの2.2 jarファイルをエクスポートすることができます(と私は単に私のApache KarafのdeployフォルダにJavaFXのジャーをドロップすることによって、これを見つけたすべてのパッケージとそれを設定しますそれをバンドルにして、生成されたマニフェストを見て)...ところで、私はKarafが生成したバンドルを使用しようとしましたが(これはpax-wrapを使用しています)、JavaFXがクラスをロードしようとする方法では動作しません(JavaFXバンドルでは表示されません。 JavaFXがアクセスしようとしているすべてのJREパッケージはもちろんです)。
私が追加したパッケージのすべてが実際には必要ではないと思われますが、安全のために、私はKarafのラッパーによって生成されたものをそのまま残して、うまくいっていなければ変更しません。
JRE libフォルダにjfxrt.jarが存在する限り、私のバンドルでJavaFXを使用できます。
しかし私はSWTと日食春分を使用していません。そのようなOSGiヘルパーライブラリを作成するためのより一般的な方法はありませんか? – chrise
[e(fx)clipseフォーラム](https://groups.google.com/forum/m/?fromgroups#!forum/efxclipse)に関するご質問は – jewelsea
OSGiバンドルのJavaFXはやや難解です。 e(fx)clipseプラグインは分点で動作していますが、ApacheのFelixでは動作しませんでしたので、javafxクラスをosgi-bundleではなくboot-classloaderに追加する必要がありました。さらなるFXバージョンがここで改善されることを願っています。 – chrise