Customizando com tarefa própria

De Basef
Ir para: navegação, pesquisa

Exemplo de criação de tarefa própria. Uma tarefa será criada com Java e executada via Ant.

Java:

package br.com.caelum.task;
 
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Task;
 
public class LogTask extends Task {
 
    private String level;
    private String msg;
 
    @Override
    public void execute() throws BuildException {
 
        if("info".equals(this.level)) {
            this.msg = "INFO: " + this.msg;
        }
 
        System.out.println(this.msg);
    }    
 
    public void setMsg(String msg) {
        this.msg = msg == null ? "" : msg.trim();
    }
 
    public void setLevel(String level) {
        this.level = level;
    }
}

Build.xml:

<project name="agenda" default="main">
 
    <path id="lib.path">
        <fileset dir="lib" includes="*.jar"/>
    </path>
 
    <taskdef name="mensagem" classname="br.com.caelum.task.MensagemTask" classpathref="lib.path" />
 
    <target name="main">
        <log level="info" msg="Hello ANT Task" />
    </target>
 
</project>