4

したがって、次のシナリオがあります

非osgi環境でIntellijを使用してmavenを使用するプロジェクトがあり、次にosgi環境でEclipseを使用するプロジェクトがあります。Eclipse プロジェクトは RCP アプリケーションを開発しているため、プラグイン アーキテクチャ (OSGI) を使用しています。

プロジェクト A – 非 Osgi 環境の Maven 組織化プロジェクト プロジェクト B – アプリケーションを作成するための Maven tycho ですが、ターゲット プラットフォームで Eclipse プロジェクト構造を使用するなどです。プロジェクト C – プロジェクト A と B の両方で機能する必要がある、maven 依存関係を持つ maven 編成プロジェクト。

また、maven-tycho が機能するように、p2-plugin を使用して Nexus をインストールしました。

私たちが抱えている大きな問題は、プロジェクト A と B の両方で問題なく動作するようにプロジェクト C を構築する方法を理解できないことです。プロジェクト A では、maven が通常どおり動作し、必要に応じて依存関係をプルダウンする必要があります。しかし、プロジェクト B にもその機能が必要です (おそらく Nexus+Tycho の組み合わせで??)。

この問題をどのように解決すべきでしょうか。これを行う方法の良い解決策が見つかりませんでした。Maven で apache felix bundle plugin を試しましたが、思い通りに動作しません。それは正しい解決策ですか?

4

1 に答える 1

3

Nexus P2 Repository Pluginを使用するのが最善の策だと思います。

を使用して、プロジェクト C 用の標準 OSGi バンドルを開発および展開できますmaven-bundle-plugin。これらのバンドルは、maven ビルドを介してプロジェクト A で直接使用できます。

次に、Nexus P2 リポジトリ プラグインを使用して、これらの OSGi バンドルを標準の P2 リポジトリとして公開し、tycho ビルドを介してプロジェクト B で使用することもできます。

于 2012-10-05T11:34:56.887 に答える