2010-04-13 4 views

Répondre

2

Le OSGi4Cpp essaie d'implémenter la spécification OSGi en C++.

+2

osgi4cpp est un projet mort - n'a jamais eu aucune activité sur elle. –

+0

en effet, c'est le moins utile de toutes les réponses à cette question – hoijui

4

Il existe également BlueBerry http://www.blueberry-project.org qui implémente un framework à base de composants inspiré par OSGi. Il est également livré avec un cadre d'application similaire à l'Eclipse RCP.

Une réécriture du noyau BlueBerry peut être trouvée dans la bibliothèque CTK PluginFramework (basée sur Qt Core): Introduction, GitHub Code.

2

Je n'ai jamais vu une solution à l'ensemble du problème, mais j'ai implémenté quelque chose de similaire en utilisant Qt plugins.

La partie Qt a fait gentiment (que C++ n'implémente pas en elle-même) était en train de gérer les interfaces C++ OO dans des modules chargeables dynamiquement. En raison de la non-standard C++ name-mangling, les DLL n'ont généralement pas d'interfaces C++, seulement des interfaces C. Qt l'a fait avec son système de méta-objet, et cela a fonctionné vraiment proprement pour moi.

+0

le [CTK Plugin Framework] (http://www.commontk.org/index.php/Documentation/Plugin_Framework) utilise le système de plugin QT, comme cela est décrit dans le blog que @Langley a lié à. – hoijui

5

Les auteurs de la bibliothèque de composants portables Open Source (POCO) ont également développé un framework modulaire basé sur OSGI appelé OSP ou Open Service Platform. http://www.appinf.com/en/products/osp.html. Ce n'est pas open source cependant.

5

J'ai trouvé cet article qui donne un statut à partir d'avril 2012. Vaut vraiment la peine d'examiner OSGi and C++ aperçu des cadres.

0

Sortie cppmicroservices. Il est activement développé et fournit un point de départ raisonnable pour créer un service dynamique basé sur SOA en C++.