我在包含build.xml的目錄中使用'ant'命令,但是我收到導入語句的錯誤。當它進入這一行,爲什麼我在使用「ant」命令build.xml時遇到導入錯誤?
<!-- compile.gui -->
<target name="compile.gui" depends="test.properties,compile.api">
<javac srcdir="${src}" destdir="${build.classes}"
classpathref="gui.class.path" debug="on" target="1.8" includeantruntime="false">
<include name="eu/lt4el/gui/**" />
</javac>
</target>
它引用的Java文件
package eu.lt4el.gui;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import eu.lt4el.common.DocumentStatus;
import eu.lt4el.AppInterface;
import eu.lt4el.defcontext.Definition;
import org.apache.log4j.Logger;
public class LTStartPage extends HttpServlet
{ . . . .
,我得到了下面的錯誤當它試圖編譯Java文件:
compile.gui:
[javac] Compiling 1 source file to /home/ufuoma/Downloads/ltserver/build/classes
[javac] /home/ufuoma/Downloads/ltserver/src/eu/lt4el/gui/LTStartPage.java:3: error: package javax.servlet does not exist
[javac] import javax.servlet.*;
[javac]^
[javac] /home/ufuoma/Downloads/ltserver/src/eu/lt4el/gui/LTStartPage.java:4: error: package javax.servlet.http does not exist
[javac] import javax.servlet.http.*;
[javac]^
[javac] /home/ufuoma/Downloads/ltserver/src/eu/lt4el/gui/LTStartPage.java:13: error: cannot find symbol
[javac] public class LTStartPage extends HttpServlet
[javac] ^
[javac] symbol: class HttpServlet
[javac] /home/ufuoma/Downloads/ltserver/src/eu/lt4el/gui/LTStartPage.java:17: error: cannot find symbol
[javac] protected HttpSession session;
[javac] ^
[javac] symbol: class HttpSession
[javac] location: class LTStartPage
[javac] /home/ufuoma/Downloads/ltserver/src/eu/lt4el/gui/LTStartPage.java:33: error: cannot find symbol
...
...
[javac] 17 errors
BUILD FAILED
/home/ufuoma/Downloads/ltserver/build.xml:305: Compile failed; see the compiler error output for details.
我有安裝了Tomcat和JRE 8,我正在運行Ubuntu,但構建失敗。我不知道我爲什麼要犯錯誤。 感謝
編輯* 類路徑被定義爲build.xml文件如下:
<!-- class path for gui -->
<path id="gui.class.path">
<pathelement path="${env.CATALINA_HOME}/common/lib/servlet-api.jar"/>
<pathelement path="${lib}/log4j-1.2.14.jar"/>
</path>
在你的build.xml文件中,變量'gui.class.path'沒有Java servlet庫,或者它指向一個不存在的路徑。沒有更多的細節,我們可以告訴。 – stdunbar
我是否爲build.xml文件提供了所有代碼? – TheSolider
如何在build.xml中定義'gui.class.path'?我們不需要整個build.xml文件,但您需要了解它是如何定義的以及它是否依賴於其他文件。例如,您可能正在從另一個文件(有時稱爲build.properties)加載屬性。 – stdunbar