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 :

Exclusion dependance transitive avec plug in WAR


Sujet :

Maven Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 16
    Par défaut Exclusion dependance transitive avec plug in WAR
    Bonjour

    Je crée une dépendance vers une librairie dans le pom de mon WAR, mais je souhaiterais qu'il ne me l'ajoute pas dans le répertoire lib du WAR mais uniquement faire une référence dans le classpath du Manifest.

    j'arrive à exlcure la librairie crée en dépendance mais il me rajoute quand même les dépendances transitive de ce dernier

    voici mon POM

    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
     
    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
                          http://maven.apache.org/maven-v4_0_0.xsd">
      <modelVersion>4.0.0</modelVersion>
     
      <parent>
        <groupId>fr.axabanque</groupId>
        <artifactId>crm.tarification</artifactId>
        <version>1.1-SNAPSHOT</version>
      </parent>
     
      <name>${parent.artifactId}.rules.httprx</name>
      <artifactId>${parent.artifactId}.rules.httprx</artifactId>
      <packaging>war</packaging>
     
      <dependencies>
          <dependency>
      		<groupId>ilog</groupId>
      		<artifactId>httprx</artifactId>
      		<version>6.5.1</version>
      		<type>war</type>
    		<scope>runtime</scope>
        </dependency>
      	<dependency>
      		<groupId>${parent.groupId}</groupId>
    	   	<artifactId>${parent.artifactId}.impl</artifactId>
    	   	<version>${pom.version}</version>
                    <!-- exclue la librairie du war -->
    	   	<optional>true</optional>
    	   	<type>jar</type>
    	</dependency>
      </dependencies>
     
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <configuration>
              <archive>
                <!-- ajoute les dépendances dans le classpath du Manifest -->
                <manifest>
                  <addClasspath>true</addClasspath>
                </manifest>
              </archive>
            </configuration>
          </plugin>
        </plugins>
      </build>
     
    </project>

  2. #2
    Expert confirmé

    Avatar de denisC
    Profil pro
    Développeur Java
    Inscrit en
    Février 2005
    Messages
    4 050
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 4 050
    Par défaut
    Citation Envoyé par Lenoiche Voir le message
    Bonjour

    Je crée une dépendance vers une librairie dans le pom de mon WAR, mais je souhaiterais qu'il ne me l'ajoute pas dans le répertoire lib du WAR mais uniquement faire une référence dans le classpath du Manifest.

    j'arrive à exlcure la librairie crée en dépendance mais il me rajoute quand même les dépendances transitive de ce dernier
    Je crois que la feinte est de la mettre en scope provided. Elle ne sera plus dans ton WAR, reste à vérifier qu'elle est toujours dans le manifeste.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 16
    Par défaut
    avec le scope provided, je n'ai plus les librairies dans le repertoire lib mais je ne les ai plus dans le manifest ...

  4. #4
    Expert confirmé

    Avatar de denisC
    Profil pro
    Développeur Java
    Inscrit en
    Février 2005
    Messages
    4 050
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 4 050
    Par défaut
    Citation Envoyé par Lenoiche Voir le message
    avec le scope provided, je n'ai plus les librairies dans le repertoire lib mais je ne les ai plus dans le manifest ...
    Effectivement, tout est expliqué là : http://maven.apache.org/plugins/mave...est-guide.html

    A priori, dans ton cas, tout ce que tu peux faire est mettre en <optional>true</optional> et exclure manuellement toutes les dépendances. C'est sale, mais d'après la doc, c'est ta seule chance....

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 16
    Par défaut
    Oui je ne pense pas qu il y ai une solution simple et exclure manuellement les dépendance n'est pas gérable, car ce sous module sera utilisé par d'autres projets, avec des dépendances différentes

    Je vais me pencher plutôt à utiliser ANT dans mon POM
    genre effacer toutes les librairies dans le repertoire temporaire de sources ...

  6. #6
    Expert confirmé

    Avatar de denisC
    Profil pro
    Développeur Java
    Inscrit en
    Février 2005
    Messages
    4 050
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 4 050
    Par défaut
    Citation Envoyé par Lenoiche Voir le message
    Oui je ne pense pas qu il y ai une solution simple et exclure manuellement les dépendance n'est pas gérable, car ce sous module sera utilisé par d'autres projets, avec des dépendances différentes
    Je parlais de les exclure directement dans ce module. Tu n'aurais que ce module à modifier pas ceux qui utilisent ce module.

    Tu déclare simplement ta dépendance en optionnal et tu lui rajoute un exclude ou tu liste toutes ses dépendances. A mon avis, c'est mieux que ant. Ant ne sera certainement pas transitif...

Discussions similaires

  1. [MooTools] transitions avec mootools !
    Par banzoner dans le forum Bibliothèques & Frameworks
    Réponses: 1
    Dernier message: 25/05/2009, 17h33
  2. Réponses: 4
    Dernier message: 05/02/2009, 15h17
  3. Fixer le temps des transition avec visionneuse powerpoint
    Par opiece dans le forum Powerpoint
    Réponses: 1
    Dernier message: 11/02/2008, 11h36
  4. déploiement d'application sous TOMCAT avec un fichier war
    Par flamant dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 23/09/2007, 19h00
  5. extension php5 avec plug-in zend phpide (eclipse)
    Par zeke_zand dans le forum Zend
    Réponses: 3
    Dernier message: 05/02/2007, 17h23

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