2017-06-28 2 views
0

Apache Felix Maven Bundle Pluginを使用してプライベートパッケージのような依存関係を宣言できますか?Apache Felix Maven Bundle Pluginを使ってプライベートパッケージのような依存関係を宣言できますか?

推移従属性の異なるバージョンのため、NoClassDefFoundExceptionを回避したいと思います。

Apache Felix Maven Bundle Plugin documentationの後には<Private-Package>org.apache.felix.log.impl</Private-Package>がありますが、この例ではプライベートとして宣言されている依存関係は自分のクラスです。

このステートメントが依存関係で機能するかどうかわかりません。

答えて

1

依存関係内にあるパッケージには、Private-Packageを使用できます。その結果、パッケージのコンテンツがバンドルに埋め込まれます。

このパッケージに含まれるすべてのクラスのすべてのインポートに対してImport-Packageステートメントが発生するため、注意してください。だから効果的にあなたの状況をさらに悪化させることができます。

+0

ご返信ありがとうございます。私はそれを考えましたが、Eclipseがどのようにこの問題を解決しているか知りたいと思います。おそらく、Eclipseは[BND](http://bndtools.org/)のようなものを使用していますか?この場合、BNDはOSGiバンドルと互換性がありますか? –

+0

Eclipseの意味は? Eclipse RCPまたはIDEのプラグインの視点?現在はbndを使用していません。 –

+0

Eclipseはこの問題を解決します.pom.xmlファイルのDependencyセクションを見ると、Eclipseが他の依存関係によって提供されている最も最近のものへの推移的な依存関係を置き換えているのがわかります。わかりますか? –

関連する問題