任务,我应该在哪里放置新的类文件?

编写自己的任务应该是一项简单的任务。 根据文档,你需要的只是扩展org.apache.tools.ant.Task。 该网站提供了一个简单的例子:

package com.mydomain;

import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Task;

public class MyVeryOwnTask extends 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;
    }
}

并且为了使用build.xml来使用它:

<?xml version="1.0"?>

<project name="OwnTaskExample" default="main" basedir=".">
    <taskdef name="mytask" classname="com.mydomain.MyVeryOwnTask"/>

    <target name="main">
        <mytask message="Hello World! MyVeryOwnTask works!"/>
    </target>
</project>

我的问题是,我应该在哪里放置MyVeryOwnTask.java文件,它应该是.jar文件吗? 它应该以某种方式相对于build.xml文件吗? com.mydomain.MyVeryOwnTask它代表了一个像eclipse中的java项目的文件结构吗?

我的蚂蚁目录是C:蚂蚁。 我有所有的环境变量设置。

谢谢。


最好的方法是把它放在jar文件中,然后在指向jar的<taskdef>添加一个<classpath>

<taskdef name="mytask" classname="com.mydomain.MyVeryOwnTask">
  <classpath>
    <fileset file="mytask.jar"/>
  </classpath>
</taskdef>

你可以把jar放在ant自己的lib目录中,然后你不需要类路径,但是如上所述使用显式的classpath元素意味着你的构建文件可以与标准的未修改的ant安装一起工作,所以进入它是一个好习惯特别是如果你打算与其他开发者合作。

链接地址: http://www.djcxy.com/p/44389.html

上一篇: task, where should i place the new class file?

下一篇: creating an executable jar file with ant which includes the build.xml file