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 :

Regrouper les propriétés des filtres maven


Sujet :

Maven Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Raphael_Lemaire
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    61
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 61
    Par défaut Regrouper les propriétés des filtres maven
    Bonjour,

    J'ai un projet (appelons le P) contenant des clients de Web services et utilisé par trois autres projets de natures différentes (un batch, une IHM lourde et un web app). Ce projet contient des clients de web services, dont l'url dépend de l'environnement cible.

    J'ai donc des profils maven pour chacun des environnements (dev, intégration, preprod, ...), où sont répétées (c'est là qu'est l'os) des propritées (les urls des wsdls).

    Y a t'il un moyen d'inclure ces propriétés dans le projet P (pour ne pas les répéter) de telle sorte que quand je lance un build avec par exemple le profil intégration dans un des projets utilisant P, les bonnes propriétés soient utilisées ?

    J'espère avoir été clair ... n'hésitez pas à me demander des précisions.

  2. #2
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Février 2008
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine et Marne (Île de France)

    Informations forums :
    Inscription : Février 2008
    Messages : 197
    Par défaut
    Salut.

    Tu as été clair (enfin pour moi).
    En fait je ne l'ai jamais fait et je ne suis pas certain que cela soit possible.
    C'est peut être jouable en utilisant le plugin remote-ressources mais sans conviction.

  3. #3
    Membre éclairé Avatar de Raphael_Lemaire
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    61
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 61
    Par défaut
    Salut,

    Pour le moment j'ai une solution imparfaite, mais ça peut donner des idées d'amélioration :

    - Je déclare un fichier de propriété par environnement dans mon projet principal, de noms "monApp-dev.properties", "monApp-integ.properties", ...

    - J'ai un fichier F incluant le fichier de propriété "monApp-@env@.properties que je copie dans chacun des projets fils

    Donc comme F est filtré les bonnes propriétés sont utilisées. le problème étant que F est dupliqué, mais c'est moins grave.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 65
    Par défaut
    Je ne suis pas bien sûr d'avoir bien compris.
    J'imagine que tu as un projet parent et que tu as des modules sous ce projet parent (client lours, webapp, ...)
    Dans le pom.xml du projet parent, je définirai des properties et des profils de la façon suivante :
    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
     
    <properties>
    ...
            <urlHostDev>http://localhost</urlHostDev>
            <urlHostInt>http://integration</urlHostInt>
    </properties>
    ...
    <profiles>
    ...
            <profile>
                <id>env-dev</id>
                <activation>
                    <property>
                        <name>!env</name>
                    </property>
                </activation>
                <properties>
                    <urlHost>${urlHostDev}</urlHost>
                </properties>
            </profile>
            <profile>
                <id>env-int</id>
                <activation>
                    <property>
                        <name>env</name>
                        <value>int</value>
                    </property>
                </activation>
                <properties>
                    <urlHost>${urlHostInt}</urlHost>
                </properties>
            </profile>
    ...
    </profiles>
    puis dans les fichiers de properties que tu définies dans les sous-projets, tu place ton fichier de properties dans un répertoire filtrant les variables maven2 et tu réutilises les variables maven2 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ...
    WebService.url = ${urlHost}
    ...

    Voilà, en espérant que cela t'a aidé.

Discussions similaires

  1. [Styles]lister les propriétés des styles
    Par peyo_le_fou dans le forum Word
    Réponses: 6
    Dernier message: 16/05/2007, 12h33
  2. Composant enregistrant les propriétés des composants
    Par pat-lion dans le forum Delphi
    Réponses: 5
    Dernier message: 29/01/2007, 19h57
  3. Réponses: 1
    Dernier message: 09/11/2006, 13h34
  4. Lire et modifier les propriétés des fichiers Office
    Par SilkyRoad dans le forum Contribuez
    Réponses: 4
    Dernier message: 18/09/2006, 22h25

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