comment faire pour installer et exécuter bundle osgi dans apache karaf
J'ai une question simple.
J'ai suivi ce tutoriel et créé un HelloWorld bundle osgi.
Comment puis-je installer et de démarrer cette série à l'aide d'apache Karaf?
Comment puis-je consulter le faisceau à l'aide de l'osgi:la commande d'installation?
Vous êtes assez bien sur la bonne voie, j'ai testé celui de la Karaf guide pour les développeurs est lié à (la deuxième mvn appel). La documentation n'est pas tout à fait exact, j'avais besoin de changer deux choses:
La version est éteint, 2.2.5 fonctionne (sur ma machine), le changer pour 2.2.8 semblait aider.
Le nom du package est com.mycompany.package. L'emballage est un mot-clé, qui ne compile pas, donc je l'ai changé pour com.mycompany.bundle.
Puis je suis entré dans le nouveau dossier de projet: com.mycompany.bundle:
cd com.mycompany.bundle
Et un mvn install:
mvn install
Puis il y a un fichier jar dans la " cible/dossier, que vous pouvez installer dans Karaf installation comme je l'ai dit avant.
La création d'un bundle Eclipse
Nouveau -> Plugin de Projet -> Choisissez un nom -> vérifiez les paramètres -> vous pouvez utiliser un modèle si vous le souhaitez.
Sélectionnez votre projet -> Export -> Plugin/Fragment -> Choisissez un dossier
Il y a votre fichier jar.
Je vous remercie de l'homme 🙂 Qui fonctionne. J'ai deux questions: la mvn install commande va générer toutes les classes et le bocal et un Manifeste.mf dans le dossier cible. Que faire si je veux configurer mon bundle moi-même? Où dois-je déposer le Manifeste.mf fichier? Puis-je tout simplement de créer un répertoire META-INF et la déposer? La deuxième question: Il y a de nombreux tutoriels et comment à d'osgi tutoriel sur l'équinoxe du conteneur. Depuis osgi est une spécification, il doit faire presque pas de différence quand je suis à l'aide d'apache karaf au lieu de l'équinoxe de droit? Donc, je peux développer mon faisceaux à l'aide d'Eclipse -> Plug-in de Projet. ??? C'est une question de goût: Soit vous configurez votre pom.xml fichier, et de configurer votre pom fichier pour générer le fichier de MANIFESTE, ou, vous pouvez créer votre propre fichier de manifeste (par exemple dans Eclipse). C'est un joli décision fondamentale: voulez-vous laisser Maven pour gérer votre fichier manifeste, ou voulez-vous le faire vous-même, à l'aide d'Eclipse? J'ai ajouté des instructions pour Eclipse Je veux utiliser maven pour gérer mon fichier manifeste(s). Quand je suivre l'éclipse façon je n'ai aucun problème pour exporter et importer des packages. À l'aide de Maven, je n'ai aucune idée de comment cela fonctionne. Si j'ai deux projet de grappes (les deux créé avec la mvn archtype) et je veux définir un bundle comme une dépendance de l'autre, je dois consulter le package dans le fichier pom... (<import-package> tag) droit? Comment cela fonctionne? Vous devrez configurer le '<instructions>' une partie de votre fichier pom. Cette page explique que: felix.apache.org/site/apache-felix-maven-bundle-plugin-bnd.html
Vous pouvez déposer le paquet dans le "déployer" directory, et Karaf juste des avis et l'installe.
Je vous remercie pour votre réponse. J'ai maintenant créé un bundle osgi à l'aide de l'maven karaf-bundle-archétype: (lien: karaf.apache.org/manual/latest-2.2.x/developers-guide/...) Mais je ne suis toujours pas en mesure d'installer et d'exécuter le paquet dans Karaf. Comment puis-je générer un *fichier jar de mon bundle afin que je puisse le déposer ito le répertoire de déploiement... ? Pour ajouter le répertoire de déploiement exécuter mvn clean package à partir du dossier racine de votre projet (Où l'pom.xml réside). Cela va générer un fichier jar dans le dossier cible. Faites glisser et déposez-le à déployer à partir de là.
Puis j'ai fait une mvn eclipse:eclipse et mvn install.
Après la copie de la jar généré dans le répertoire de déploiement de ma course JBoss Fuse serveur d'impression "à Partir du bundle". 🙂
Ok, c'est une autre question, mais va ici:
Vous êtes assez bien sur la bonne voie, j'ai testé celui de la Karaf guide pour les développeurs est lié à (la deuxième mvn appel). La documentation n'est pas tout à fait exact, j'avais besoin de changer deux choses:
Donc mon archétype de commande a:
Puis je suis entré dans le nouveau dossier de projet: com.mycompany.bundle:
Et un mvn install:
Puis il y a un fichier jar dans la " cible/dossier, que vous pouvez installer dans Karaf installation comme je l'ai dit avant.
La création d'un bundle Eclipse
Nouveau -> Plugin de Projet -> Choisissez un nom -> vérifiez les paramètres -> vous pouvez utiliser un modèle si vous le souhaitez.
Sélectionnez votre projet -> Export -> Plugin/Fragment -> Choisissez un dossier
Il y a votre fichier jar.
C'est une question de goût: Soit vous configurez votre pom.xml fichier, et de configurer votre pom fichier pour générer le fichier de MANIFESTE, ou, vous pouvez créer votre propre fichier de manifeste (par exemple dans Eclipse). C'est un joli décision fondamentale: voulez-vous laisser Maven pour gérer votre fichier manifeste, ou voulez-vous le faire vous-même, à l'aide d'Eclipse?
J'ai ajouté des instructions pour Eclipse
Je veux utiliser maven pour gérer mon fichier manifeste(s). Quand je suivre l'éclipse façon je n'ai aucun problème pour exporter et importer des packages. À l'aide de Maven, je n'ai aucune idée de comment cela fonctionne. Si j'ai deux projet de grappes (les deux créé avec la mvn archtype) et je veux définir un bundle comme une dépendance de l'autre, je dois consulter le package dans le fichier pom... (<import-package> tag) droit? Comment cela fonctionne?
Vous devrez configurer le '<instructions>' une partie de votre fichier pom. Cette page explique que: felix.apache.org/site/apache-felix-maven-bundle-plugin-bnd.html
OriginalL'auteur Frank Lee
Vous pouvez déposer le paquet dans le "déployer" directory, et Karaf juste des avis et l'installe.
Pour ajouter le répertoire de déploiement exécuter mvn clean package à partir du dossier racine de votre projet (Où l'pom.xml réside). Cela va générer un fichier jar dans le dossier cible. Faites glisser et déposez-le à déployer à partir de là.
OriginalL'auteur Frank Lee
Frank réponse m'a aidé très rapide:
J'ai créé un bundle avec cet archétype:
Puis j'ai fait une
mvn eclipse:eclipse
etmvn install
.Après la copie de la jar généré dans le répertoire de déploiement de ma course JBoss Fuse serveur d'impression "à Partir du bundle". 🙂
OriginalL'auteur jwebuser