2010-09-13 3 views
3

Я создал задачу Ant, в которой я хотел бы иметь массив свойств? Прежде всего, возможно ли это? Может ли муравей иметь массив свойств?Как использовать свойство Array в ant Task?

public class MyTask extends Task { 
    private String tokens[] = null; 
    public void setTokens(String[] _tokens) { 
     //... 
    } 
    public void execute() { 
    // iterator over the conditions 
    } 
} 

Теперь, как установить токены в файле сборки муравьев?

ответ

1

Похоже, вы хотите установить несколько внутренних тегов.

Writing your own task дает некоторые рекомендации. Раздел, который вы используете, - Поддержка вложенных элементов. Это довольно просто. Я был бы склонен использовать что-то вроде следующего

List tokens = new ArrayList(); 

public void addConfiguredToken(NestedElement token) { 
    tokens.add(token); 
} 

Вы могли бы использовать его, используя что-то вроде следующего

<task> 
    <token value="XXX" /> 
    <token value="YYY" /> 
</task> 
0

Ant имеет некоторые типы, как DirList и FileSet, а также - это довольно часто, чтобы иметь задача, которая принимает атрибут, который является неявным списком, а затем перебирает содержимое. Если вы имеете дело с файлами, хорошо, что вы можете сказать Ant о том, чтобы погладить их, сохранить их в FileSet и передать это своему пользовательскому типу.