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

Maven Java Discussion :

[M2] EJB plugin, MANIFEST.MF et Classpath


Sujet :

Maven Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné

    Inscrit en
    Septembre 2006
    Messages
    466
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 466
    Par défaut [M2] EJB plugin, MANIFEST.MF et Classpath
    Bonjour,

    Je cherche à créer un EJB jar où je peux ajouter les classpath dans le MANIFEST.MF.
    Dans mon pom j'ai ceci:
    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
     
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-ejb-plugin</artifactId>
      <version>2.0</version>
      <configuration>
          <generateClient>true</generateClient>
          <archive>
              <manifest>
                    <addClasspath>true</addClasspath>
                    <classpathPrefix>APP-INF/lib</classpathPrefix>
              </manifest>
          </archive>    
      </configuration>          
    </plugin>
    Tout se passe bien sauf qu'il faut que je puisse spécifier pour une librairie un prefix différent (en fait pour être exact, ne pas avoir de prefix). Je pensais donc ajouter un manifestEntries en utilisant la version 2.1-SNAPSHOT car il y a un bug avec la 2.0 (cf. http://jira.codehaus.org/browse/MJAR-41). J'ai donc récupéré sous SVN cette dernière version et l'ai installée dans mon repository locale.

    En faisant un petit test j'ai maintenant
    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
     
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-ejb-plugin</artifactId>
      <version>2.1-SNAPSHOT</version>
      <configuration>
          <generateClient>true</generateClient>
          <archive>
              <manifest>
                    <addClasspath>true</addClasspath>
                    <classpathPrefix>APP-INF/lib</classpathPrefix>
              </manifest>
              <manifestEntries>
                    <Class-Path>test</Class-Path>
              </manifestEntries>
          </archive>    
      </configuration>          
    </plugin>
    Le problème est que le résultat n'est pas le bon. Dans mon manifest j'ai :
    Class-Path: test
    Class-Path: test

    Il semblerait que la correction ne fonctionne pas. Sans doute que si emmanuel est par là, il pourrait confirmer ou non le bug.

    Si j'essaye en rajoutant les librairies une par une (bof !), ca ne marche pas mieux (il double mon dernier manifestEntries) :
    Class-Path: test/resource-1.0-SNAPSHOT.jar
    Class-Path: test/resource-1.0-SNAPSHOT.jar

    Y a-t-il un autre moyen de faire ce dont j'ai besoin ? Par exemple :
    Class-Path: myLib-1.0-SNAPSHOT.jar APP-INF/lib/lib1-1.0.jar APP-INF/lib/lib2-1.0.jar...

    Merci d'avance,

    Rémy

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Mai 2006
    Messages
    1 172
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 172
    Par défaut
    Il se peux que le plugin ejb n'utilise pas la dernière version de maven-archiver, peux-tu vérifier? Je crois que la génération du manifest a été corrigée dans la dernière version de maven-archiver.

  3. #3
    Membre chevronné

    Inscrit en
    Septembre 2006
    Messages
    466
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 466
    Par défaut
    Bonjour Emmanuel,

    Dans le pom du plugin ejb v2.1-SNAPSHOT j'ai ceci :
    <dependency>
    <groupId>org.apache.maven</groupId>
    <artifactId>maven-archiver</artifactId>
    <version>2.1-SNAPSHOT</version>
    </dependency>

    Comment savoir si c'est bien la dernière version de maven-archiver ?

    Je trouve d'ailleurs dommage que dans la génération du site web du projet on a pas par défaut un historique des versions car c'est toujours assez difficile d'avoir cette information.

    Rémy

  4. #4
    Membre Expert

    Profil pro
    Inscrit en
    Mai 2006
    Messages
    1 172
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 172
    Par défaut
    Citation Envoyé par rseM2
    Dans le pom du plugin ejb v2.1-SNAPSHOT j'ai ceci :
    <dependency>
    <groupId>org.apache.maven</groupId>
    <artifactId>maven-archiver</artifactId>
    <version>2.1-SNAPSHOT</version>
    </dependency>

    Comment savoir si c'est bien la dernière version de maven-archiver ?
    La dernière version est la 2.2. Pour la connaitre, il faut regarder dans les sources ou dans le repository.
    J'ai mis à jour la version dans les sources et j'ai déployé une nouvelle snapshot.

    Citation Envoyé par rseM2
    Je trouve d'ailleurs dommage que dans la génération du site web du projet on a pas par défaut un historique des versions car c'est toujours assez difficile d'avoir cette information.
    Je ne crois pas que celà soit prévu. Tu peux créer une anomalie dans jira, et nous verrons ce que nous pouvons faire.

  5. #5
    Membre chevronné

    Inscrit en
    Septembre 2006
    Messages
    466
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 466
    Par défaut
    Bonjour Emmanuel,

    Citation Envoyé par evenisse
    La dernière version est la 2.2. Pour la connaitre, il faut regarder dans les sources ou dans le repository.
    J'ai mis à jour la version dans les sources et j'ai déployé une nouvelle snapshot.
    Merci beaucoup, ca marche nickel maintenant !

    Citation Envoyé par evenisse
    Je ne crois pas que celà soit prévu. Tu peux créer une anomalie dans jira, et nous verrons ce que nous pouvons faire.
    Je ferai une demande en ce sens prochainement.

    Merci encore,

    Rémy

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

Discussions similaires

  1. Plugin dependance et runtime classpath.
    Par DevMapo dans le forum Eclipse Platform
    Réponses: 1
    Dernier message: 28/08/2009, 00h38
  2. Dépendance EJB3 maven-ejb-plugin Jboss 4.0.4
    Par vain_mich dans le forum Maven
    Réponses: 2
    Dernier message: 30/07/2007, 10h48
  3. [JAR][Manifest] classpath trop long
    Par zolive dans le forum Général Java
    Réponses: 5
    Dernier message: 22/03/2007, 16h46
  4. Plugin ant : erreur de classpath
    Par DanielW33 dans le forum Maven
    Réponses: 7
    Dernier message: 08/08/2006, 16h56
  5. [plugins][JOnAS]PB tutoriel EJB avec JOnAS et eclipse
    Par bicente_t dans le forum Eclipse Java
    Réponses: 17
    Dernier message: 30/07/2004, 09h08

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