Bonjour,
Je veux créer un "plugin" pour application java et pouvoir le déployer/distribuer séparément de l'application-mère.
Quand j'incorpore sa source dans la source de l'application-mère, ça fonctionne. Que je les sépare et mets les 2 jar l'un à côté de l'autre. Cela ne fonctionne pas.

Voici le code de l'application-mère:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
private static void init() {
    extensions = new LinkedHashMap<String, itFileAnalyser>();
    analysers = new ArrayList<itFileAnalyser>();
    // Load les analyseurs connus
    ServiceLoader<itFileAnalyser> loader = ServiceLoader.load(itFileAnalyser.class);
    logger.debug("Looking for file analysers.");
    for (Iterator<itFileAnalyser> it = loader.iterator(); it.hasNext();) {
        itFileAnalyser analyser;
        try {
            analyser = it.next();
        } catch (Exception e) {
            logger.error("while retrieving an analyser",e);
            continue;
        }
        logger.debug("\tFound " + analyser.getClass().getName());
        areSupportedFilesPlayable = areSupportedFilesPlayable | analyser.areFilesPlayable();
        analysers.add(analyser);
        retrieveExtensions(analyser);
    }
    logger.debug("Got analyser for:");
    if (extensions.isEmpty()) {
        logger.debug("\tnone");
    } else {
        for (String extension : extensions.keySet()) {
            logger.debug("\t" + extension + " -> " + extensions.get(extension).getClass().getName());
        }
    }
}
Le jar du plugin est structuré comme ceci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
com
   ... 
      mesclasses.class
META-INF
   maven
      ... 
         pom.properties, pom.xml
   services
      com.zparkingb.zploger.Compute.analyzers.itFileAnalyser
Avez-vous une idée de ce qu'il faut changer ?