J'ai mon établissement de construction afin que je passe dans ma variable via la ligne de commande: dans mon pom j'ai: p> Cela fonctionne bien, mais j'aimerais identifier si quelqueevariable n'est pas spécifié sur la ligne de commande, puis de la défaut de sorte que mon script puisse continuer. p> peut-il être fait à Maven? < / p> p>
3 Réponses :
Vous pouvez spécifier la valeur de la propriété par défaut dans la section CODE> Propriétés CODE> de votre fichier POM:
<project>
[...]
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>1.0.1</version>
<executions>
<execution>
<id>enforce-property</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireProperty>
<property>basedir</property>
<message>You must have a basedir!</message>
<regex>\d</regex>
<regexMessage>You must have a digit in your baseDir!</regexMessage>
</requireProperty>
<requireProperty>
<property>project.version</property>
<message>"Project version must be specified."</message>
<regex>(\d|-SNAPSHOT)$</regex>
<regexMessage>"Project version must end in a number or -SNAPSHOT."</regexMessage>
</requireProperty>
</rules>
<fail>true</fail>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
[...]
</project>
Merci pour la réponse perspicace Alex. Bien que je cherche à défaut la propriété plutôt que de l'appliquer. Donc, si ce n'est pas spécifié, le script utiliserait la valeur par défaut.
@Teracyte. Oui, une valeur de la section Propriétés code> est une valeur par défaut et vous pouvez toujours l'écraser à partir de la ligne de commande.
Vous pouvez utiliser des profils à la place, mais vous aurez besoin d'un profil pour chaque variable.
<profile>
<id>default-value-1</id>
<activation>
<activeByDefault>false</activeByDefault>
<property>
<name>!someVariable</name>
</property>
</activation>
<properties>
<someVariable>DEFAULT-VALUE</someVariable>
</properties>
</profile>
Vous pouvez spécifier la valeur par défaut comme lorsque vous exécutez la commande Maven, vous pouvez remplacer cette valeur comme celle-ci p>
Solution simple dont j'avais besoin d'utiliser dans une construction Jenkins