0

私は、Tomcatjsfプロジェクトで開始するように要求しているアクティベーターを備えたOSGiプラグインを持っています。

http://www.eclipse.org/equinox/documents/quickstart.phpおよびその他のいくつかのドキュメントに基づいて、この構造をWEB-INFディレクトリーの下に配置して、osgiの分点実装を開始しました。プラグインに直接アクセスすることはできましたが、別のプラグインからプラグインを参照することでプログラムでアクセスすることはできませんでした。これがその例です。

MyProject configuration / config.ini org.eclipse.osgi_3.3.0.jar org.eclipse.equinox.common_3.3.0.jar org.eclipse.update.configurator_3.2.100.jar plugins / com.fnet.tts.service_1.0.0.jar

config.iniに次の2行を配置しました

osgi.bundles = org.eclipse.equinox.common @ 2:start、org.eclipse.update.configurator @ start、org.eclipse.equinox.registry @ 3:start、com.fnet.tts.service@4:start osgi .bundles.defaultStartLevel = 4

ただし、tts.serviceを呼び出すバンドルをアクティブ化しようとすると、このエラーが発生します。

詳細:com.fnet.runtime.KSException:com.runtime.impl.RuntimeServiceImpl $ KSImpl .loadKnowledgebase(RuntimeServiceImpl.java:190)でバンドル'com.fnet.tts.service.viewSchedule_2.0.0.jar'を開始できません..loadKnowledgebaseHandle(InterviewContext.java:83)原因:org.osgi.framework.BundleException:バンドルを解決できませんでした。理由:制約がありません:Require-Bundle:com.fnet.tts.service; bundle-version = "1.0.0" at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(Bundl eHost.java:305)at org.eclipse.osgi.framework.internal.core.AbstractBundle.start( Abstrac tBundle.java:265)at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(Abstrac tBundle.java:257)at com.fnet.runtime.impl.RuntimeServiceImpl $ KSImpl .loadKnowledgebase(RuntimeServiceImpl.java:

私はこれを何時間も見てきました、そして私は前進することができるように手がかり、ヒント、または答えを探しています。

ありがとう。

4

1 に答える 1

0

「com.fnet.tts.service」バンドルに何が起こったのかを確認するために、さらにデバッグ出力を有効にできますか? Equinox はそれを読み込もうとして失敗しましたか、それとも試みさえしませんでしたか?

また、OSGi コンソールにアクセスできますか? もしそうなら、インストールされたバンドルのリストはどのように見えますか? バンドルをコンソールから手動でインストールできますか?

開始レベル 4 でバンドルを開始しようとしています。この開始レベルに達していない可能性があります。レベル 1 でバンドル (すべてのバンドル?) を開始すると機能しますか?

于 2009-03-31T03:00:14.977 に答える