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 :

Maven : injection des contantes dans les dependencies


Sujet :

Maven Java

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    99
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 99
    Par d�faut Maven : injection des contantes dans les dependencies
    Bonjour,

    Voici un extrait d'un fichier pom.xml :

    <dependencies>
    <dependency>
    <groupId>alfresco-enterprise-tomcat-2.2.4</groupId>
    <artifactId>alfresco-enterprise</artifactId>
    <version>2.2.4</version>
    <scope>system</scope>
    <systemPath>${appdeplib.path}/alfresco-web-client.jar</systemPath>
    </dependency>
    </depedencies>


    <build>
    <!-- Customize here your webapp name - default: alfresco.war -->
    <finalName>${webapp.name}</finalName>
    <!-- Used to access Sourcesense repository for writing. Public version not available, see README.txt -->
    <!-- <extensions>-->
    <!-- <extension>-->
    <!-- <groupId>org.apache.maven.wagon</groupId>-->
    <!-- <artifactId>wagon-webdav</artifactId>-->
    <!-- <version>1.0-beta-3</version>-->
    <!-- </extension>-->
    <!-- </extensions>-->
    <!-- In certain cases we do build time filtering with the single sourcing application.properties -->
    <filters>
    <filter>src/main/properties/${env}/application.properties</filter>
    </filters>

    Pourquoi la valeur ${appdeplib.path} dans l'attribut systemPath n'est pas pris en compte ?
    Je dispose d'une fichier application.properties � l'endroit correct avec la cl� appdeplib.path=...
    L'erreur (indirecte) est :

    [ERROR]

    The following POM validation errors were detected:

    - For dependency Dependency {groupId=alfresco-enterprise-tomcat-2.2.4, artifactId=alfresco-enterprise, version=2.2.4, type=jar}: system-scoped dependency must specify an absolute path systemPath.

  2. #2
    Expert �minent
    Avatar de tchize_
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par d�faut
    que vaut appdeplib.path

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    99
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 99
    Par d�faut
    C:/intuitiv/src/workspace-msc-224/SDK AlfrescoEmbedded

    J'ai essai� aussi :

    C:\\intuitiv\src\\workspace-msc-224\\SDK AlfrescoEmbedded


    mais aucun des 2 change quoi que ce soit. M�me probl�me.


    NB : de toute fa�on �a me dit cela quel que soit la valeur de appdeplib.path

  4. #4
    Membre �prouv�
    Inscrit en
    Ao�t 2007
    Messages
    84
    D�tails du profil
    Informations personnelles :
    �ge : 45

    Informations forums :
    Inscription : Ao�t 2007
    Messages : 84
    Par d�faut
    Il faudrait d�j� voir ce que �a donne si le chemin vers le JAR ne contient pas d'espaces.

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    99
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 99
    Par d�faut
    Pas faux.
    Mais avant que tu en parles, m�me si je mets un c:\toto j'ai la m�me erreur.
    Il ne s'agit pas d'un probl�me de formatage de cha�ne.

  6. #6
    Membre �prouv�
    Inscrit en
    Ao�t 2007
    Messages
    84
    D�tails du profil
    Informations personnelles :
    �ge : 45

    Informations forums :
    Inscription : Ao�t 2007
    Messages : 84
    Par d�faut
    Hum, en fait, il me semble que les <filters> sont � utiliser lors du filtrage de fichiers, il est fort possible que cela ne remplace pas les propri�t�s du POM courant.

    C'est facile � voir si tu remplaces le ${appdeplib.path} dans la d�claration de ta d�pendance par un "vrai" chemin.

    Je ne vois d'ailleurs pas l'utilit� de "propertiser" le chemin System d'une d�pendance selon l'environnement.

    Si vraiment tu veux le faire, il faudra plut�t passer par un profil dans le POM.

    Le mieux serait peut-�tre de toute fa�on de mettre cette d�pendance dans un repo

  7. #7
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    99
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 99
    Par d�faut
    Citation Envoy� par Tomekaa Voir le message
    Hum, en fait, il me semble que les <filters> sont � utiliser lors du filtrage de fichiers, il est fort possible que cela ne remplace pas les propri�t�s du POM courant.

    C'est facile � voir si tu remplaces le ${appdeplib.path} dans la d�claration de ta d�pendance par un "vrai" chemin.

    Je ne vois d'ailleurs pas l'utilit� de "propertiser" le chemin System d'une d�pendance selon l'environnement.

    Si vraiment tu veux le faire, il faudra plut�t passer par un profil dans le POM.

    Le mieux serait peut-�tre de toute fa�on de mettre cette d�pendance dans un repo
    Effectivement � terme, les d�pendances seront uniquement dans le repo. Mais il s'agit d'une biblioth�que .jar donc le chemin sera en dur dans le pom (properties ou autres)
    Je peasserai aussi par les profiles pour manager les diff�rents environnement.

    Merci

  8. #8
    Membre chevronn� Avatar de kalysto
    Profil pro
    D�veloppeur
    Inscrit en
    Mars 2003
    Messages
    442
    D�tails du profil
    Informations personnelles :
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : D�veloppeur

    Informations forums :
    Inscription : Mars 2003
    Messages : 442
    Par d�faut
    Les propri�t�s que tu utilises dans ton pom.xml doivent etre d�finies dans la balise properties de ton pom:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    <properties>
      <appdeplib.path>C:/intuitiv/src/workspace-msc-224/SDK AlfrescoEmbedded</appdeplib.path>
    </properties>
    Tu peux aussi poser cette propri�t� dans un profile si tu veux la changer simplement.

Discussions similaires

  1. Injection des accents dans les nom de tables ?
    Par lathenor dans le forum SQLite
    R�ponses: 3
    Dernier message: 21/05/2007, 11h36
  2. [EasyPHP] probl�me de visibilit� des variable dans les includes
    Par d1g-2-d1g dans le forum EDI, CMS, Outils, Scripts et API
    R�ponses: 4
    Dernier message: 23/10/2005, 01h55

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