2010-09-07 114 views
2

我正在寫一個Ant任務內著名的XML文件的Ant目標:調用來自Ant任務

public class MyTask extends Task { 

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

現在我想知道是否有可能,我打電話給存在於其他已知的目標上述execute()方法內的xml文件?

喜歡的東西:

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

當然要找出你運行示例代碼」最簡單的方法是已經提出並看看它是否有效?什麼阻止你這樣做? – Syntax 2010-09-07 01:32:52

+0

errr,AntCaller是一個虛擬類。 – digiarnie 2010-09-07 01:35:07

+0

那麼回答:) – Syntax 2010-09-07 02:01:37

回答

3

你是在正確的軌道上。如果您想要從XML獲取所有其他任務,那麼您將使用<ant>(因爲它是另一個文件)。只有擁有.class文件才能從Java調用任務。幸運的是,你確實有Ant任務本身的.class文件,所以你可以使用同樣的技術,你在構建XML會:

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