2009-01-21 7 views
6

MyFeature se compose des plugins a, b et c qui dépendent d'un plugin tiers d. Comment dois-je emballer MyFeature tel que(Eclipse) Comment empaqueter des plugins tiers avec ma fonctionnalité?

  1. Il contient d et peut l'installer si elle n'existe pas dans l'atelier cible
  2. Mes plugins a, b et c peut se référer à une version spécifique de d, même si versions supérieures ou inférieures existent dans l'atelier
  3. les exigences de la dépendance d être satisfaites si elle est sur le point d'être installé

PS Je me rends compte que certains de ce qui précède ne sont peut-être pas possibles. Je ne fais qu'indiquer mon problème actuel tel que je le vois et s'il y a un meilleur moyen de me faire complètement oublier

Répondre

3

Tout ce dont vous avez besoin est facile à faire. Vos plugins a, b, c peuvent dépendre de la version exacte de d. Les outils de développement des plugins Eclipse vous permettent de définir ceci. Plugin 'd' devrait être sur votre site de mise à jour, à côté de vos plugins. Votre fonctionnalité devrait explicitement déclarer qu'elle est composée de a, b, c et d. Si 'd' a besoin de plus de plugins, il serait préférable que vous les fournissiez également sur votre site de mise à jour (et que votre fonctionnalité puisse les inclure aussi). PDEBuild (scripts ant pour la construction décentralisée des plugins eclipse) supporte l'extraction/reconditionnement de plugins tiers, vous pouvez donc l'utiliser pour préparer votre fonction.

+0

Pouvez-vous donner un exemple de comment faire cela? comme quoi voulez-vous dire par "devrait être sur votre site de mise à jour, à côté de vos plugins"? Ma fonctionnalité est installée à partir d'une archive et non d'un site d'installation. Je trouve que si j'inclue un plugin tiers dans ma fonctionnalité, lorsque j'essaie d'installer cette fonctionnalité et que l'instance Eclipse a déjà ce plugin tiers installé, l'installation échoue (Impossible de terminer l'installation en raison d'une dépendance conflictuelle). – wildabeast

+0

Une dépendance conflictuelle peut signifier qu'eclipse a donné le plugin dans la version X, mais votre fonctionnalité nécessite une version différente. Peut-être que vous pouvez utiliser la version X aussi? –

+0

Oui, c'est ce que je pensais. Savez-vous comment je peux déclarer qu'une version du plugin est valide dans mon manifeste (feature.xml)? – wildabeast