カラフの特徴とOBRは、(同じ種類の)同じ問題を解決するさまざまな方法です。両方とも、OSGiバンドルをOSGiフレームワークにインストールすることができますが、どのバンドルをインストールするかはどのように決定するかは異なります。
Karafの機能では、その機能のすべてのバンドルのURLを明示的にリストするファイル(feature.xml、say)を提供します。彼らは、ファイルシステム、またはMavenリポジトリ、またはURLで記述できるその他の場所に存在することができます。
OBRは、要件と機能に基づいて動作するバンドルを生成します。あなたの出発点としてインストールしているものの推移的な依存関係を確認し、それらがすべてインストールされていることを確認します。通常、OBRフォーマットをサポートする1つ以上の外部リポジトリを設定し、ランタイムのOBRリゾルバはそれらのリポジトリからバンドルをプロビジョニングします。したがって、 "私はパッケージorg.fooが必要です"または "org.barを実装するOSGiサービスが必要です"と言うことができ、プロビジョナはあなたの要件に最も適したバンドルを決定します。 OBRは、カラフの機能よりも柔軟性と汎用性がありますが、必要なインフラストラクチャですでに準備されているフレームワークに、明確に定義されたバンドルセットをインストールするだけでは過度のことになるかもしれません。また、アプリケーションを構成するバンドルが互いに依存関係にない場合には、あなたの助けにならないでしょう - あなたはまだそれらをすべてあなたの 'スタートセット'に含める必要があります。
Karafの機能では、Maven URLのバージョン範囲を指定できるため、機能が少しでも柔軟に設定できます。 Karafの機能にはOBRとの相互運用性もありますので、OBR要件の観点から機能定義ファイルを記述することができます。
私はKaraf Caveがいくつかの機能を備えたOBR実装であると信じています。したがって、機能やOBRプロビジョニングのような新しい「テクノロジー」ではなく、サーバーです。
- アクションで エンタープライズOSGiの:http://www.manning.com/cummins
自己宣伝する正しい方法を;)良い答え、ありがとう! – Kjellski
"あなたが必要とするインフラストラクチャーですでに準備されているフレームワークに明確なバンドルのセットをインストールするだけなら、余計になるかもしれません。 、まだ:) – sloven