我在編譯一個servlet菜鳥教程下提供的包含有javax.servlet包的java文件,變異出錯,
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorld extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
{
出現以下問題:
HelloWorld.java:2: 軟件包 javax.servlet 不存在
import javax.servlet.*;
^
HelloWorld.java:3: 軟件包 javax.servlet.http 不存在
import javax.servlet.http.*;
^
HelloWorld.java:6: 找不到符號
符號: 類 HttpServlet
public class HelloWorld extends HttpServlet {
^
HelloWorld.java:7: 找不到符號
符號: 類 HttpServletRequest
位置: 類 HelloWorld
public void doGet(HttpServletRequest request, HttpServletResponse response)
^
HelloWorld.java:7: 找不到符號
符號: 類 HttpServletResponse
位置: 類 HelloWorld
public void doGet(HttpServletRequest request, HttpServletResponse response)
^
HelloWorld.java:8: 找不到符號
符號: 類 ServletException
位置: 類 HelloWorld
throws IOException, ServletException
其原因是java編譯器沒有找到軟件包javax.servlet。
解決辦法:
從tomcat lib目錄下拷貝一個servlet-api.jar的包到“JDK\jre\lib\ext”目錄下
凡是出現找不到包的情況,都可以將找到的包放到JDK\jre\lib\ext下,然后再編譯就能夠通過。