缺少build.xml中的类引用

时间:2009-07-06 12:12:42

标签: java ant build.xml

当我给蚂蚁 myproject-war 时,我收到以下错误。有人可以帮忙吗?

BUILD FAILED
C:\Documents and Settings\personal\Desktop\project files\myproject\bu
ild.xml:167: taskdef A class needed by class org.apache.jasper.JspC cannot be fo
und: javax/servlet/ServletContext

6 个答案:

答案 0 :(得分:0)

必须将包含javax.servlet.ServletContext的JAR添加到CLASSPATH。

答案 1 :(得分:0)

检查清单和类路径。他们可能没有包括必要的罐子。

例如:classpathref="some_classpath"可以放在javac标记中,其中some_classpath等于

<path id="some_classpath">
    <pathelement location="${someJar.jar}"/>
    <pathelement location="${another.jar}"/>
</path>

另外,你的jar的清单应该有:

<manifest>
    <attribute name="Class-Path" value="../lib/another.jar ../lib/someJar.jar"/>
</manifest>

答案 2 :(得分:0)

在ant中可以定义新任务(taskdef)。其中一些任务需要您将java库放入ant的类路径中。这可以通过将适当的jar复制到ant-installation的lib / ext目录中来实现。

答案 3 :(得分:0)

您的类路径中需要一个jar,用于运行包含javax.servlet.ServletContext的JspC的目标。因此,例如,如果您使用的是Tomcat,那么servlet-api.jar可能就是您正在寻找的jar。如果你正在做GWT,gwt-user.jar可能就是jar。取决于你的背景。

答案 4 :(得分:0)

您正在使用具有核心API不支持的依赖项的Ant任务。

来自documentation

  

Ant支持许多可选项   任务。可选任务是一项任务   这通常需要一个外部的   库以实现功能。可选的   任务与包装在一起   核心Ant任务。

使用manual找到可选任务,并将所需的dependencies添加到类路径中。

答案 5 :(得分:0)

Ant不会在类路径中占用空格。