2011-08-15 9 views
2

私はC++言語で開始されたプロジェクトを拡張しています。今私はプロジェクトの新しい部分を開発しています。 OSGi(Java)に基づいています。 新しいプロジェクトで古いプロジェクトを構成する安定した方法はありますか? C++オブジェクトをOSGiバンドル(または類似の構造とメタデータ)に変換できるステップはありますか?あるいは、それらの間にコミュニケーションをとる方法はありますか?C++ベースのプロジェクトでOSGiベースのプロジェクトを作成するには?

答えて

4

C++ではありませんがC言語ではありませんが、Apache Celixをご覧ください。 Apache Celixは、Java実装などに依存することなく、CでOSGi仕様を実装したものです。現在、セリクスはインキュベーション段階にあります。

CとJavaの間の通信に関して、Celixの(短期間)todoリストの項目の1つは、OSGiリモートサービスの実装です。 hessianは、すでに他の多くの言語で存在し、比較的シンプルでバイナリでコンパクトなので、実装として使用する予定です。これは、分散型システムとC - Java通信のソリューションを提供します。

1

Java-Native InterfaceのJNIの代替手段はありません。

1

core specification(セクション3.10)のBUNDLE_NATIVECODEヘッダーと関連する説明をご覧ください。それでも、JNIを使​​用して多くのインターフェースを作成しなければなりません。

1

FYI - Cの通信< - > Java通信ParemusのOSGiリモートサービス実装(Nimbleを参照)は、Avroディストリビューションプロバイダをサポートしています。

関連する問題