IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Eclipse Platform Discussion :

Question sur inter-dépendance Plugin


Sujet :

Eclipse Platform

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Contrec
    Homme Profil pro
    Inscrit en
    Mars 2005
    Messages
    597
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40

    Informations forums :
    Inscription : Mars 2005
    Messages : 597
    Par défaut Question sur inter-dépendance Plugin
    Bonjour,

    Pour un projet développé sous Eclipse RCP je rencontre quelques soucis pour "brancher" mes plugins entre eux...

    Malgré toute la documentation que j'ai lu, il reste encore des points où ma compréhension bloque :

    1. J'ai 3 plugins A, B et C. A a besoin de B, A a besoin de C et C a besoin de B, est ce que je crée un cycle de dépendances entre plugins ?

    A --> B
    A --> C
    C --> B

    En fait mon plugin A est l'application principale, le plugin B est un plugin de Log et C est un plugin de lecture de propriétés dans des fichiers.

    2. Je n'arrive toujours pas à savoir dans quels cas il vaut mieux exporter un package d'un plugin plutôt que de créer un point d'extension. Aujourd'hui j'ai compris cela : J'exporte un package d'un plugin A pour pouvoir me servir des classes et méthodes de ce package dans un plugin B. Je crée un point d'extension quand je ne veux proposer que des services bien précis du plugin A dans le plugin B.

    Voilà si quelqu'un peut m'aider dans ma compréhension, ce serait sympa, surtout qu'après j'ai 6 ou 7 plugins à "brancher" entre eux. Il n'y a pas de boucle directe (du genre A --> B, B --> A) mais pas mal de boucles indirectes (du genre A --> B --> C --> A).

    Merci d'avance pour vos réponses.

  2. #2
    Membre expérimenté
    Avatar de DaveShot
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2008
    Messages
    238
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Août 2008
    Messages : 238
    Par défaut
    Bonjour,

    Je pense que ce post correspond à ton problème :Imbrication croisée de projets

    David.

  3. #3
    Membre éclairé Avatar de Contrec
    Homme Profil pro
    Inscrit en
    Mars 2005
    Messages
    597
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40

    Informations forums :
    Inscription : Mars 2005
    Messages : 597
    Par défaut
    Merci pour lien mais j'ai deux remarques :

    la commande visibility:reexport doit bien se rajouter dans le fichier MANIFEST.MNF ? Au début ?

    Ensuite la solution d'exporter les .jars de plugins me parait plus être une rustine plutôt qu'une organisation correcte de plugins...

    Enfin je n'ai pas de boucles directes (A --> B, B --> A), je ne voit donc pas pourquoi je bloque sur l'interdépendance de mes plugins... Comment vous organisez-vous pour créer votre structure de plugin sans avoir de cycles de dépendances ?

  4. #4
    Membre expérimenté
    Avatar de DaveShot
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2008
    Messages
    238
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Août 2008
    Messages : 238
    Par défaut
    Bonjour,

    pour le réexport tu as la syntaxe suivante dans Require-Bundle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Require-Bundle: 
    ...
    org.eclipse.XXX ; visibility:=reexport,
    ...
    Sinon, tu peux le gérer directement cela dans l'onglet dépendances, en sélectionnant un plugin et en cliquant sur Properties.

    En fait, le problème que tu peux avoir, c'est que ton plugin A utilise des dépendances que tu as à la fois dans C et B, d'ou le problème de cycle.
    Il faudrait que C dépende de B et A dépende de C (tout en bénéficiant des dépendances de B, via le réexport).

    David.

  5. #5
    Membre éclairé Avatar de Contrec
    Homme Profil pro
    Inscrit en
    Mars 2005
    Messages
    597
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40

    Informations forums :
    Inscription : Mars 2005
    Messages : 597
    Par défaut
    Donc grâce à ce reexport, je peux bien organiser mes plugins c'est ça ?

  6. #6
    Membre expérimenté
    Avatar de DaveShot
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2008
    Messages
    238
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Août 2008
    Messages : 238
    Par défaut
    Le fait de mettre reexport sur une dépendances d'un plugin A, te permet de bénéficier de cette dépendance dans le plugin B, sachant que le plugin B dépend de A.
    Dans ton exemple, cela t'empêche d'avoir des dépendances triangulaires (donc cyclique) entre tes trois plugins A, B et C.

    Ton exemple :
    A --> B
    A --> C
    C --> B
    devient
    C --> B : C dépend de B
    A --> C : A dépend de C
    Avec A qui récupère les dépendances de B via le plugin C.
    Tu dois centraliser tes dépendances, et ton code si nécessaire, dans un seul plugin, afin que les autres puissent en bénéficier.

    David.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Question sur les dépendances Maven
    Par felix01 dans le forum Maven
    Réponses: 8
    Dernier message: 26/10/2013, 03h16
  2. [Maven] Question sur les dépendances
    Par yo_haha dans le forum Maven
    Réponses: 0
    Dernier message: 15/11/2012, 16h01
  3. Encore une question sur le Validator Plugin
    Par vny dans le forum Struts 1
    Réponses: 10
    Dernier message: 26/07/2007, 15h34
  4. Réponses: 2
    Dernier message: 04/07/2007, 16h58
  5. Question sur les dépendances fonctionnelles
    Par Luffy Duck dans le forum Débuter
    Réponses: 3
    Dernier message: 29/03/2007, 21h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo