Не удается найти задачу taskdef ant
всего -
Я следую самым простым инструкциям на этой странице:
http://ant.apache.org/manual/develop.html
однако, когда я пытаюсь выполнить целевой "main", я получаю эту ошибку в netbeans:
taskdef class dec102012.MyAntTask cannot be found using the classloader AntClassLoader[]
но эта ошибка не имеет смысла, потому что мой новый класс Java, который расширяет "задача" выглядит так:
package dec102012;
import org.apache.tools.ant.BuildException;
public class MyAntTask extends org.apache.tools.ant.Task{
private String msg;
// The method executing the task
public void execute() throws BuildException {
System.out.println(msg);
}
// The setter for the "message" attribute
public void setMessage(String msg) {
this.msg = msg;
}
}
соответствующая часть в моей сборке.XML выглядит:
<taskdef name="mytask" classname="dec102012.MyAntTask" classpath="dec102012"/>
<target name="main">
<mytask message="Hello World! MyVeryOwnTask works!"/>
</target>
1 ответов
проблема в том, что Ant Classloader должен знать, где *.сидит файл класса.
Как только я изменил сборку.XML, чтобы выглядеть так:
<taskdef name="mytask" classname="dec102012.MyAntTask" classpath="build/classes"/>
<target name="main">
<mytask message="Hello World! MyVeryOwnTask works!"/>
</target>
он работал (т. е. он распечатал сообщение Hello World).