Précédent   Forum du club des développeurs et IT Pro > Environnements de développement > Eclipse > Eclipse Platform
Eclipse Platform Développement de plugins Eclipse et d'applications Eclipse RCP (Rich Client Platform). Avant de poster -> Tutoriels sur le développement de plugins Eclipse
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 24/09/2012, 14h21   #1
polonain2
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 67
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 67
Points : 31
Points : 31
Par défaut [Plugin] Plugin chargé mais classes inaccessibles

Bonjour à tous,

Pour résumé: j'ai un problème d'accès à une classe, défini dans un plugin A, depuis un plugin B.

Plus en détail:
J'utilise Eclipse 3.7 SR2
Je travaille sur une application RCP tierce. J'ai un vieux pluginA que je dois mettre à jour avec la nouvelle version de cette application RCP.
Ce plugin contient un ensemble de sample pour customiser notre pluginB: notre pluginB contient plein de classes abstraites.
PluginA (que je dois mettre à jour) contient donc une liste de classes qui héritent des classes abstraites du pluginB

Je vais prendre un exemple (je donne volontairement des noms bidons): pluginA contient une classe MyOwnButtonStyle, défini dans le package com.mycusto.buttons.sample1.
MyOwnButtonStyle hérite de com.pluginB.AbstractButton

Dans le manifest du pluginA, on a donc rajouté com.pluginB comme Require-Bundle + Eclipse-RegisterBuddy:com.pluginB pour éviter une cyclité dans les plugins.

Lorsque je lance mon appli RCP via le debug Eclipse, je vois bien pluginA, pluginB chargés dans "Installation Details"

Mais lorsque pluginB essaye d'instancier com.mycusto.buttons.sample1.MyOwnButtonStyle j'ai un gros java.lang.ClassNotFoundException.

Je ne passe jamais dans l'activator du pluginA.

J'ai essayé de créer un nouveau plugin via les sample Eclipse (Hello World Command) et c'est lorsque je clique sur l'action que je passe dans l'activator.
J'ai testé en changeant l'option LazyStart:true/false

Qu'est-ce que j'ai raté?

Voici mon manifest si c'est plus clair comme ça:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: SMCustom Plug-in
Bundle-SymbolicName: SMCustom;singleton:=true
Bundle-Version: 1.0.0
Bundle-Activator: com.mycusto.plugin.Activator
Bundle-Localization: plugin
Require-Bundle: org.eclipse.ui,
 org.eclipse.core.runtime,
 com.pluginB
Eclipse-LazyStart: true
Export-Package: com.mycusto.actions.sample1,
 com.mycusto.actions.sample2
Eclipse-RegisterBuddy: com.pluginB
merci pour votre aide
polonain2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2012, 14h56   #2
Gueritarish
Modérateur
 
Avatar de Gueritarish
 
Homme Marc
Développeur Java
Inscription : mai 2007
Messages : 1 564
Détails du profil
Informations personnelles :
Nom : Homme Marc
Âge : 28
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur Java
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2007
Messages : 1 564
Points : 3 568
Points : 3 568
Salut,

As-tu spécifié Eclipse-BuddyPolicy: registered dans ton plug-in B?

Voilà, à+
Gueritarish
__________________
Pas de questions technique par MP, les forums sont là pour ça.

Le 5 et 6 juin à Toulouse, la première EclipseCon France !
Gueritarish est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/09/2012, 10h40   #3
polonain2
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 67
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 67
Points : 31
Points : 31
ça fonctionne parfaitement maintenant, merci beaucoup.
polonain2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 04h23.


 
 
 
 
Partenaires

Hébergement Web