Quand exactement les fichiers plugin.xml provenant des dépendances de mon plugin sont-ils chargés?

StackOverflow https://stackoverflow.com/questions/132263

Question

Je vais utiliser l’application Eclipse RCP. Dans mon plugin A, j'utilise un plugin tiers B. Dans le plugin B, il existe plugin.xml avec quelques extensions. Dans mon plugin A, j'ai ajouté des extensions aux extensions définies dans le plugin B, et cela fonctionne.

Maintenant, j'ai essayé d'écraser certaines valeurs dans certaines extensions de B dans le plugin A. Maintenant, lorsque je lance l'application, il utilise parfois d'anciennes valeurs (de plugin.xml dans le plugin B), parfois il utilise mes nouvelles valeurs (du plugin A plugin.xml). Il est cohérent dans une exécution d'application, mais change d'une exécution à l'autre.

Le code qui obtient ces valeurs se trouve dans le plugin B et je ne voudrais pas le changer. Et ça ressemble à ça:

IExtensionPoint extensionPoint = Platform.getExtensionRegistry().getExtensionPoint("org.jbpm.gd.common.xmlMappings");
IExtension[] extensions = extensionPoint.getExtensions();

Comment puis-je m'assurer que mes valeurs seront utilisées?

Je pense qu'il est important de définir le bon ordre de chargement des fichiers plugin.xml. Mon plugin.xml sera donc le dernier et mes valeurs écraseront les leurs, mais je ne sais pas comment le faire.

Était-ce utile?

La solution

Eclipse ne garantit pas l'ordre d'affichage des extensions. De plus, il n'y a pas de cycle de vie garanti lorsque des plugins spécifiques sont chargés. Si vous souhaitez une garantie, vous devez l’implémenter manuellement, ce qui nécessitera probablement une modification du plug-in B.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top