Bonjour,
Je suis débutant avec ANT, je voudrais lire une seule propriété se trouvant dans un fichier.properties, afin de tester sa valeur pour effectuer des affectation dans mon script ANT. Mon besoin vient que j'ai plusieurs fichier .properties que je charge par ordre donné, et que si charge le fichier qui contient la propriété qui sur laquelle je dois faire un test, l'ordre sera cassé
Si l'idéé n'est pas claire voici le code :
Merci d'avance pour votre aide
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86 <target name="gestionParametres"> <!-- ================================= Parcours des paramètres d'entrée pour les placer dans des properties counterParam == compteur sur la liste des paramètres ================================== --> <echo file="${NOM_LOG}" append="true"> Lecture des paramètres d'entrée </echo> <var name="counterParam" value="0" /> <!-- Parcours de la liste de paramètres et affectation des properties paramList="codeBatch param1=valeur1 param2=valeur2...."--> <for list="${paramList}" param="read" delimiter=" "> <sequential> <var name="param" value="@{read}" /> <!-- Soit le premier argument est le code de batch et on le met dans la property codeBatch --> <!-- soit c'est /? et on affiche une aide --> <if> <equals arg1="${counterParam}" arg2="0" /> <then> <property name="batchCode" value="@{read}" /> <math result="result" operand1="${counterParam}" operation="${op}" operand2="${step}" datatype="int" /> <var name="counterParam" value="${result}" /> </then> <else> <var name="counter" value="0" /> <!-- Si on a déjà lu le premier paramètre --> <!-- alors on doit lire un élément de la forme nomParam=valeur --> <for list="${param}" param="item" delimiter="="> <sequential> <var name="param${counter}" value="@{item}"/> <math result="result" operand1="${counter}" operation="${op}" operand2="${step}" datatype="int" /> <var name="counter" value="${result}" /> </sequential> </for> <!-- S'il manque la valeur du paramètre alors erreur --> <if> <not> <isset property="param1" /> </not> <then> <if> <equals arg1="${param0}" arg2="/?" /> <then> <!-- Chargement de batchCode.properties --> <var name="file.to.set" unset="true"/> <property name="file.to.set" value="${properties.dir}/${batchCode}.properties"/> <runtarget target="setPropertiesFile" /> <runtarget target="help" /> <fail>${helpAsked}</fail> </then> <else> <if> <equals arg1="${param0}" arg2="console" /> <then> <runtarget target="consoleMode" /> </then> <else> <fail>"${unDefinedParam} [ ${param0} ]"</fail> </else> </if> </else> </if> </then> <else> <!-- <runtarget target="checkifNewBatch"/> --> <!-- Sinon on affecte la property --> <if> <not> <isset property="MODE_P"/> </not> <then> <property name="isnew" value="false"/> <property name="${param0}" value="${param1}" /> </then> <else> <var name="isnew" value="true" /> <property name="${param0}" value="-P${param0}=${param1}" /> </else> </if> <echo message="isnew=${isnew}" /> <var name="param1" unset="true" /> <var name="param0" unset="true" />
Partager