Ciblage de la cible dans Ant
Est-il une possibilité de littéralement remplacer une cible ou à imiter ce en quelque sorte?
Donc, quand je l'appelle
<target perform-after="release">
<do-something />
</target>
Elle agira comme ceci:
<target name="release">
<antcall target="release" /> <!-- call previous version, not recursion -->
<do-something />
</target>
Je pense qu'il a un sens, que je vais décrire sur Android exemple:
Nous avons une .xml
des modèles pour tous les build.xml
dans le dossier SDK ({$SDK}/tools/ant/*.xml
), ces fichiers sont inclus dans chaque généré build.xml
pour chaque projet. Il y a seulement -pre-compile
-pre-build
et -post-compile
cibles vide et facile à remplacer. Mais il n'y a pas de vide -post-release
cible, par exemple. Google recommande généré build.xml
commentaires juste à copier-coller une cible à mon propre build.xml
et ensuite le paramétrer. Mais je pense qu'il n'est pas ok, car si Google va changer quelque chose dans cette cible à l'intérieur d'un modèle, je ne saurai jamais, je suis en utilisant la version obsolète.
source d'informationauteur shaman.sir
Vous devez vous connecter pour publier un commentaire.
Voir la "Cible primordiale de la" section de la l'importation tâche ou la Cible "réécriture" de la inclure tâche. En bref, donner de la commune build.xml un nom de projet comme "commun", puis utilisez la fonction "commun.libération" dans le antcall.
Je note que antcall n'est pas tout à fait le même depuis il démarre un nouveau projet à l'exécution, ce qui signifie que les variables définies par la cible ne sera pas visible plus tard. Je n'ai pas de Fourmi disponible sur cette machine de test, mais vous pouvez essayer quelque chose comme cela pour éviter la antcall: