bonjour,
je souhaite avoir des fichiers .properties pour mon projet maven un pour l'environnement de developpement et l'autre pour l'exploitation.
est -t-il faisable? comment ?
merci.








bonjour,
je souhaite avoir des fichiers .properties pour mon projet maven un pour l'environnement de developpement et l'autre pour l'exploitation.
est -t-il faisable? comment ?
merci.
quels fichier de properties??
tu peux définir avec maven des profiles.
Articles: Richfaces - JBosstools pour JSF.
Bonjour,
Tu as une discussion en cours et assez similaire ici : http://www.developpez.net/forums/d90...s-dependances/

Bonjour. j'ai un peu le meme probleme :
j'ai 3 répertoires :
/src/main/resources/dev
/src/main/resources/prod
/src/main/resources/rec
qui contiennent chacun un fichier messages.properties.
A la compilation je souhaiterais qu'un seul de ces fichiers soit inclus dans le war, en fonction du profil utilisé.
j'ai regardé le lien fourni en réponse, mais cela ne m'a pas aidé.
voila une partie de mon pom.xml :
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<profile> <id>DEV</id> <properties> ... </properties> <build> <resources> <resource> <directory>${basedir}/src/main/resources/dev</directory> </resource> </resources> </build> </profile> <profile> <id>REC</id> <properties> ... </properties> <build> <resources> <resource> <directory>${basedir}/src/main/resources/rec</directory> </resource> </resources> </build> </profile> idem pour prod...
et le résultat dans le war est qu'a la place du fichier messages.properties, j'ai TOUS les répertoires (dev, rec et prod) contenant chacun le fichier....
bref, il a bêtement recopié l'arborescence projet dans le livrable.
Bon, je n'ai pas lu le lien, mais dans ton pom.xml, j'ai l'impression que tous les profils sont activés. Ce qui expliquerait ainsi pourquoi tous les répertoires sont intégrés dans le WAR final.
Il te faudrait donc définir (via la balise <activation>) comment chacun des profils est activé.
La règle est que tous les profils sont désactivés par défaut (éventuellement à l'exception d'un qui est celui par défaut), et que la ligne de commande Maven active tel ou tel profil (soit par la présence d'une variable, soit en utilisant l'argument -P).
Nous sommes tous semblables, alors acceptons nos différences !
--------------------------------------------------------------
Liens : Blog | Page DVP | Twitter
Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
Critiques : Apache Maven

Re, merci pour ta réponse rapide.
j'ai oublié de précisé qu'au build je lance avec la commande suivante :
call mvn clean package assembly:assembly -P DEV
ou -P PROD, etc.









Bonjour,
Je suis pas sur mais je crois qu'il faut pas d'espace entre -P et Dev.
Code : Sélectionner tout - Visualiser dans une fenêtre à part mvn clean package assembly:assembly -PDEV
Il faut un espace.
Reste que je ne suis pas sûr que les autres profils soient vraiment désactivés dans ton cas.
Donc soit tu désactives par défaut tes profiles, soit tu peux essayer cette commande qui active DEV mais désactive PROD et REC :
Code : Sélectionner tout - Visualiser dans une fenêtre à part mvn ... -P DEV,!PROD,!REC
Nous sommes tous semblables, alors acceptons nos différences !
--------------------------------------------------------------
Liens : Blog | Page DVP | Twitter
Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
Critiques : Apache Maven

Re,
je vais essayer de désactiver les autres profils, mais honnêtement, j'y crois pas beaucoup (j'ai essayé d'introduire des erreurs dans le profil de dev et ça ne plante que le build de DEV).
[edit]
j'ai testé. ça change rien
pfff
[/edit]

Bon, j'y suis arrivé.
en fait il fallait juste virer un truc qui trainait dans le pom
et il fallait corriger la destination
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12<build> ... <resources> <!-- partie a supprimer --> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> </resource> <!-- fin partie a supprimer --> ... </build>
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<profile> <id>REC</id> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <configuration> <webResources> <resource> <directory>src/main/resources/rec</directory> <!-- ici la correction --> <targetPath>./WEB-INF/classes</targetPath> <!-- fin la correction --> </resource> </webResources> </configuration> </plugin> </plugins> </build> </profile>
Partager