Je travaille actuellement avec des développeurs qui souhaitent configurer des tâches Ant qui définissent des variables spécifiques à l'environnement plutôt que d'utiliser des fichiers de propriétés. Il semble qu'ils préfèrent faire cela parce qu'il est plus facile de taper:Raisons d'utiliser les fichiers de propriétés Ant sur "Propriétés Tâches"
ant <environment task> dist
que de taper:
ant -propertyfile <environment property file> dist
Ainsi, par exemple:
<project name="whatever" default="dist">
<target name="local">
<property name="webXml" value="WebContent/WEB-INF/web-local.xml"/>
</target>
<target name="remote">
<property name="webXml" value="WebContent/WEB-INF/web-remote.xml"/>
</target>
<target name="build">
<!-- build tasks here --->
</target>
<target name="dist" depends="build">
<war destfile="/dist/foo.war" webxml="${webXml}">
<!-- rest of war tasks here -->
</war>
</target>
Je trouve qu'il est difficile de Convainquez-les que les fichiers de propriétés sont la bonne solution. Je crois que les propriétés des fichiers sont mieux parce que:
- Ils fournissent plus de flexibilité - si vous avez besoin d'un nouvel environnement il suffit d'ajouter un nouveau fichier de propriétés
- Il est clair ce qui se passe - Vous devez savoir sur ce petit « truc » pour réaliser ce qu'ils accomplissent
- Ne fournit pas de valeurs par défaut et la possibilité d'utiliser des substitutions - s'ils utilisaient des fichiers de propriétés, ils pouvaient fournir des valeurs par défaut en haut du projet mais pouvaient les remplacer par un fichier
- Le script ne se brise pas si une tâche d'environnement n'est pas fournie sur la ligne de commande
Bien sûr, tout ce qu'ils entendent, c'est qu'ils doivent changer leur script Ant et doivent taper plus sur la ligne de commande.
Pouvez-vous fournir des arguments supplémentaires en faveur des fichiers de propriétés sur les "tâches de propriétés"?
Donc. Damné. Vrai. – sjas