Ant Javac和Commandline Javac给出了不同的结果

时间:2011-04-11 19:16:53

标签: java servlets ant javac

我有一个导入一些servlet库的类。当我从命令行编译它时,它很好。

当我使用ant compile任务编译它时,它会给出错误,它无法在其路径中找到servlet库。

这是一个已知/常见的事件吗?

这是我的Ant目标:

<target name="compile" depends="prepare" description="compile the source" >
    <echo>=== COMPILE === SRCDIR: ${src}/com/udfr/src/java </echo> <!-- Compile the java code from ${src} into ${build} -->
    <javac srcdir="${src}/com/udfr/src/java" destdir="${dist}/WEB-INF/classes"/>
</target>

2 个答案:

答案 0 :(得分:2)

如果你没有在javac任务的类路径中正确指定servlet库,这种情况很常见......我怀疑这就是问题所在。如果您发布失败的任务和有效的命令行,我们将能够提供更多帮助。

答案 1 :(得分:2)

由于某种原因,在命令行中编译程序时,包含Servlet API的JAR文件是类路径的一部分。但是,它不在javac Ant任务的类路径中。

您应该明确地将JAR文件添加到javac Ant任务中的类路径中。有几种方法可以做到这一点;请阅读http://ant.apache.org/manual/Tasks/javac.html