2010-09-07 10 views
2

J'écris une tâche Ant:appel cible ant dans le fichier xml connu à partir d'une tâche Ant

public class MyTask extends Task { 

    public void execute() { 
     .... 
    } 
} 

Maintenant, je me demande s'il est possible pour moi d'appeler une cible qui existe dans une autre connue fichier XML à partir de la méthode execute() ci-dessus?

Quelque chose comme:

public void execute() { 
    AntCaller.call("anotherBuildFile.xml", "someTarget"); 
} 
+0

Sûrement la meilleure façon de le savoir est d'exécuter le code exemple, vous » J'ai mis en place et voir si ça marche? Qu'est-ce qui vous empêche de le faire? – Syntax

+0

errr, AntCaller est une classe de faire-croire. – digiarnie

+0

Eh bien ça répond :) – Syntax

Répondre

3

Vous êtes sur la bonne voie. Si vous vouliez effectuer une autre tâche à partir de XML, vous utiliseriez <ant> (puisqu'il s'agit d'un autre fichier.) Vous pouvez appeler une tâche à partir de Java uniquement si vous avez le fichier .class correspondant. Heureusement, vous avez le fichier .class pour la tâche Ant lui-même afin que vous puissiez utiliser la même technique que vous le feriez dans une version xml:

Ant helper = new Ant(); 
helper.setTarget("someTarget"); 
helper.setAntFile("anotherBuildFile.xml"); 
helper.execute(); 
Questions connexes