4

Apache POI の OSGi 化バージョンが必要ですが、見つからなかったので、BND を使用して作成しました。BND は、Apache POI には Apache Commons Logging が必要であると主張しています。そこで、OSGi 化されたバージョンを探しましたが、見つかりませんでした。そこで、BND を使用して作成しました。BND は、Apache Commons Logging には「Apache Excalibur」と「Apache Avalon」が必要であると主張していますが、これらはどうやらロギングに関連する Apache プロジェクトを廃止したようです。それらの OSGi 化されたバージョンを見つけることはできないと思います。

私は本当にこれが必要ですか?それとも、Apache Commons がオプションで Excalibur と Avalon をサポートしているからですか? その場合、BNDにそれらをオプションと見なし、それらがないという事実を気にしないように指示できますか?

あるいは、Commons Logging の「本当の」OSGi バージョンを知っている人はいますか? これは、これら (およびその他) の問題を、私の中途半端な「BND に理解させる」方法よりも考え抜かれた方法で既に対処していますか?

前もって感謝します。

編集:明確にするために、BND は実際には Commons Logging に Avalon と Excalibur が必要だとは主張していません。むしろ、パッケージ org.apache.avalon.framework.logger および org.apache.log が必要であると主張しています。これらのパッケージは、(私には) それぞれ Avalon と Excalibur からのもののようです。

4

2 に答える 2

4

Eclipse Orbitで利用可能な Commons Logging の OSGi 化バージョンがあります。Excalibur および Avalon への依存関係はオプションであり、実行時に必須ではありません。誰かが OSGi 化 Apache POI にも取り組んでいることは知っていますが、私たちのビルドには循環依存を引き起こす問題がいくつかあります。

于 2012-09-07T06:26:18.230 に答える
2

pax ロギングの使用を試すことができます。すべての一般的なロギング フレームワークに OSGi 対応の実装を提供します。これをテストする最も簡単な方法は、Apache Karaf を使用することです。pax ロギングがプリインストールされています。

http://karaf.apache.org/を参照

于 2012-09-07T07:33:28.083 に答える