bonjour,
je suis à la recherche de la méthode me permettant de récupérer le path ou l'url du plugin "courant" (c a d contenant la classe appelant cette méthode...)
merci.
bonjour,
je suis à la recherche de la méthode me permettant de récupérer le path ou l'url du plugin "courant" (c a d contenant la classe appelant cette méthode...)
merci.
Tu peux répéter la question s'il te plaît ?
Il y a une méthode qui s'appelle getClass() quelque soit ta classe mais c'est tout ce que je vois.
Je te remercie pour ta réponse, mais ça ne correspond pas exactement à ce que je recherche....
Je reformule le problème:
- je développe un plugin
- je crée un classe dans ce plugin
- je recherche le moyen de trouver l'url d'accès à mon plugin ou le path de mon plugin (que je suis en train de développer) et ce quelque soit le chemin d'install d'eclipse et la config user.
merci![]()
Salut,
Voici ta réponse.
CalculetteView2 est le nom de mon plugin. cette partie est hardcodée aussi, car beaucoup plus complexe à réussir au run-time. J'utilise cette technique pour hardcoder simplement le path courant de mes images dans mon plugin. J'appelle ma fonction comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 private ImageDescriptor getImageDescriptor(String relativePath) { URL url = Platform.find(Platform.getBundle("CalculetteView2"), new Path(relativePath)); return ImageDescriptor.createFromURL(url); }
J'espère que c'est bien la solution à ton problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 getImageDescriptor("icons/notepad2.jpg")
j'ai essayé avec les éléments que tu m'as envoyé mais sans succés....
j'ai donc cherché dans une autre direction....
le problème était le suivant ..
je suis dans le plugin A.
J'utilise des classes qui dérivent d'un plugin B
la classe A1 (dans A) cherche sont URL.. elle utilise des méthodes de sa classe mère B1 qui est dans le plugin B => je trouve donc l'URL du plugin B ( c'est pas moi qui ai développé les méthodes....)
J'ai alors surchargé les méthodes mais elle bossaient sur le bundle de l'instance du plugin B.
J'ai donc récupéré ll'instance du plugin A pour lui appliquer les méthodes suivantes....
Plugin monplugin = Platform.getPlugin("fr.ifp.icarre.monplugin");
locationUrl = monplugin .getBundle().getEntry("/").
locationUrl = Platform.resolve(locationUrl);
locationUrl = Platform.asLocalURL(locationUrl);
merci![]()
Partager