Bonjour à tous,
Je suis actuellement sur un projet qui contient notamment une appli contenant un serveur Jetty qui tourne dans un framework OSGi.
Mes problèmes ont commencés quand j'ai voulu installer la version Mars d'Eclipse, à cause du saut de version de Jetty (de 8 à 9 alors que les bundles de websockets de Jetty 9 ressemblent assez peu à la version précédente, et que les dépendances de bundles sont très contraintes en terme de version).
Ces problèmes ayant été résolu après pas mal d'essai, j'essaie d'écrire un process pour que mes collègues puissent faire l'upgrade vers mars et l'upgrade du projet conjointement, et là j'observe des comportements que je n'arrive pas à expliquer. En fait, j'ai beaucoup de mal à faire 2 installations identiques, d'où ces quelques questions, qui tournent autour de l'installation de bundles.
Q1. Le répertoire dropins de eclipse utilisé par p2 : Si on suit la doc du site de p2 ici, j'en comprend que le dossier dropins est scanné (et ses plugins incorporés dans le framework OSGi d'Eclipse) à chaque démarrage d'Eclipse. En pratique, j'ai observé qu'il est beaucoup plus sûr de forcer un -clean dans la ligne de commande d'Eclipse pour que cela se produise, c'est néanmoins très lourd/long. Il semble que le dossier dropins est aussi scanné lorsque Eclipse propose un redémarrage après avoir installé des plugins ou fait des mises à jour. Savez-vous quelle option correspond à ces types de redémarrage, et pouvez-vous confirmer/corriger mes observations concernant le scan du répertoire dropins ?
Q2. Plugins proposés pour les required-plugins dans le wizard des MANIFEST.MF : Quand on veut définir les required bundles d'un bundle que l'on développe, en utilisant le wizard de génération de Manifest, ce dernier propose une liste où l'on peut choisir ces bundles. De mon expérience passée, j'imaginais que cette liste était construite en joignant les bundles définis dans le workspace et ceux de la platforme OSGi dans lequel Eclipse s'execute (ceux résolus à priori). Sur au moins l'une de mes installation, le wizard ne propose pas (d'ailleurs le buildeur d'Eclipse ne reconnais pas et ne trouve pas) des bundles pourtant présent dans la plateforme OSGi dans laquelle Eclipse s'execute (je vais la vérification en exécutant un ss dans la console). Qu'est ce qui peut expliquer ceci ? Comment est construite la liste des bundles connus par Eclipse pour les développements dans le workspace ?
Q3. Faire du dévelopement de plugins avec Eclipse Java : J'essaie d'éviter l'installation d'un Eclipse JEE en me restreignant à un Eclipse Java (qui me semble suffisant). Pour les développement de plugins, je dois alors installer le Plugins Development Tools de l'Eclipse MarketPlace. Dans certain cas cela ne suffit pas. (Je ne peux pas créer de nouveaux projets de type plugins, les Manifest.MF ne peuvent pas être ouvert avec leur Wizard. Est-ce que cela n'est pourtant pas censé suffire ? Sinon que me manque-t-il que j'installe parfois sans savoir ou en ayant installé un eclipse JEE en parallèle de de l'Eclipse Java, dans ce cas c'est peut-être p2 qui me résoud des dépendances sans que je m'en sois apperçu. Un avis ?
Merci d'avance pour vos éclaircissements
Pierre
Partager