Je veux créer un projet Maven avec la structure suivante:Définir les propriétés dans maven en fonction des autres valeurs de propriété
A
|--pom.xml
|--B
|--pom.xml
|--C
|--pom.xml
où A, B et C sont des dossiers et pom.xml de B et pom.xml de C sont les enfants de pom.xml de A. Je veux avoir dans le pom.xml de B la section suivante:
<properties>
<some.property>B</some.property>
</properties>
Et dans C:
<properties>
<some.property>C</some.property>
</properties>
Et je veux en A quelque chose à définir la valeur de plusieurs autres propriétés en fonction de la valeur de une propriété. Ainsi, par exemple, en pseudocode, A ferait quelque chose comme ceci:
if (some.property == 'B') then
some.other.property = 'some-value-based-on-b'
else if (some.property == 'C') then
some.other.property = 'some-value-based-on-c'
...
Je veux courir le mvn clean install se référant à la pom.xml de A (qui contient une section de module pointant vers B et C), de sorte que, pour autant que je sache, je ne peux pas utiliser de profils pour cela (puisque dans maven2 les projets tournant dans le même réacteur héritent du même profil actif, je peux utiliser maven3, mais je ne trouve pas si ça change quelque chose).
Est-ce que quelqu'un a une idée de comment faire cela?
Merci,
Cela ne fonctionne pas parfaitement, cependant. Lorsque je voulais l'utiliser pour importer des dépendances avec une portée définie par l'une des variables que je définissais dans la phase de validation, elle s'est rompue. Je suppose que la résolution des dépendances se produit avant que ce script ait le temps d'être exécuté. – Rafael
Oui, je le pense. pour y parvenir, vous devez parcourir par programme les dépendances et remplacer les espaces réservés par des valeurs de propriété^shudder ^. mais ce que vous pouvez faire est de créer les dépendances par programme en premier lieu. –