Bonjour,
Voici la problématique que je rencontre.
J'ai aujourd'hui un bundle [MyBundle] qui fonctionne.
Ce bundle dépend de Spring, Camel et d'un autre bundle [Reference] que j'ai créé (quand je parle de dépendances ce sont les imports de package de ces librairies).
J'ai quelques classes dans ce jar qui ne se servent ni de Spring, ni de Camel, ni d'OSGi et je suis en train de les extraire car quelqu'un d'autre doit s'en servir mais ne veut pas de ces dépendances.
J'ai essayé la méthode "naïve" j'extrais mes classes, j'en fais un bundle [myBundleLib] qui dépend de [MyReference] et je fais un autre Bundle [MyBundleDeploy] qui me fait l'instanciation avec Spring et Camel et qui dépend de [MyBundleLib].
Dans ce cas je me retrouve avec un [MyBundleDeploy] qui fait un ClassNotFoundException car il ne trouve pas une dépendance vers une classe Cref dans [Référence] (la classe qui a besoin de Cref est dans [myBundleLib]). Du coup, il faudrait que je rajoute toutes les dépendances de [myBundleLib] dans [MyBundleDeploy].
J'ai essayé de passer par des fragments mais la gestion de dépendance est aussi chaotique.
J'ai pensé aussi à instancier la classe qui pose problème dans myBundleLib directement dans ce bundle et de l'exposer via un service OSGI mais dans ce cas, je vais rajouter la dépendance vers Spring et/ou des libs OSGi.
Comment doit-on gérer ce genre de problématique pour avoir quelque chose de simple et maintenable ?
Merci d'avance pour votre aide.
Partager