`

软件包javax.servlet不存在

阅读更多

在编译ServletExp.java程序:

import java.io.*;
import java.text.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class ServletExp extends HttpServlet
{
	public void doGet( HttpServletRequest request, HttpServletResponse response)throws IOException, ServletException
	{
		PrintWriter out = response.getWriter();
		out.println("<html>");
		out.println("<body bgcolor = \"white\">");
		out.println("Method:");
		out.println(request.getMethod() );
		out.println("</br>");
		out.println("URI: ");
		out.println(request.getRequestURI());
		out.println("</br>");
		out.println("Protocol: ");
		out.println(request.getProtocol());
		out.println("</br>");
		out.println("RemoteAddr: ");
		out.println(request.getRemoteAddr());
		out.println("</body>");
		out.println("</html>");
	}
	public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException
	{
		doGet(request, response);
	}
}

 

出现问题如下:

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,由于servlet和JSP不是Java平台Java SE(标准版)的一部分,而是Java EE(企业版)的一部分,因此,必须告知编译器servlet的位置。

解决:

1、修环境变量CLASSPATH,添加servlet-api.jar的路径如下:

     F:\Program Files\Apache Software Foundation\Tomcat 6.0\lib\serblet-api.jar

     重启cmd,重新编译

     javac ServletExp.java  编译成功。

2、下载或者到安装jboss的目录下,如:“jboss4\server\default\lib”拷贝一个javax.servlet.jar的包到“JDK\jre\lib\ext”目录下,而不是目录“JDK\jre\lib”,也不是“JDK\lib”下。

    凡是出现找不到包的情况,都可以将找到的包放到JDK\jre\lib\ext下,然后再编译就能够通过。

分享到:
评论

相关推荐

    编译时提示软件包javax.servlet.http不存在,如何解决

    解决 Java 编译时软件包 javax.servlet.http 不存在的问题 Java 编译时提示软件包 javax.servlet.http 不存在是 Java 开发中常见的问题。javax.servlet.http 是 Java Servlet 规范中的一个软件包,提供了 HTTP 协议...

    javac 编译出现 软件包 javax.servlet.http 不存在

    NULL 博文链接:https://xjg396.iteye.com/blog/1973026

    servlet API

    Servlet API 由两个主要的软件包构成:`javax.servlet` 和 `javax.servlet.http`。其中 `javax.servlet` 包含了所有通用的 Servlet 接口和类,而 `javax.servlet.http` 则针对 HTTP 协议进行了扩展。 #### 二、Java...

    java JDK J2EE API

    JSP API提供了`javax.servlet.jsp`和`javax.servlet.jsp.tagext`等包,它们包含了用于解析JSP页面并将其转换为Servlet的类和接口,例如`javax.servlet.jsp.JspWriter`、`javax.servlet.jsp.PageContext`和`javax....

    jsp + severlet +中文api

    * javax.servlet.software package:提供了一个对应 HTTP 的软件包。 * javax.servlet.GenericServlet:提供了一个基本的 servlet 实现。 * javax.servlet.ServletInputStream:提供了一个输入流对象,以便从客户端...

    Servlet中文API文档

    Servlet API提供了丰富的类和接口,比如`javax.servlet.http.HttpServlet`,它是处理HTTP请求的基础类,以及`javax.servlet.ServletRequest`和`javax.servlet.ServletResponse`接口,它们分别代表了来自客户端的请求...

    Java编译器用maven打war包出错解决办法

    错误原因:java编译器没有找到软件包javax.servlet。 解决方法:在pom.xml中添加以下依赖包: ```xml &lt;groupId&gt;javax.servlet &lt;artifactId&gt;servlet-api &lt;version&gt;2.5 &lt;scope&gt;provided &lt;groupId&gt;javax....

    servlet技术简介.pdf

    包括两个用于所有 Servlet 的基本软件包:javax.servlet 和 javax.servlet.http。javax.servlet.http 提供了 HTTP Servlet 应用编程接口,用于创建 HTTP Servlet。 六、HTTP Servlet HTTP Servlet 使用一个 ...

    Java servlet-api应用文档

    在Java Servlet API中,主要分为两个关键的软件包:`javax.servlet`和`javax.servlet.http`。 1. `javax.servlet`包: 这个包包含了一些与特定协议无关的接口和类,比如`GenericServlet`、`ServletException`和`...

    Java Servlet API说明文档.pdf

    - **HTTP 软件包**:`javax.servlet.http` 包含了处理 HTTP 请求和响应所需的类和接口,如 `HttpServletRequest`, `HttpServletResponse`, `HttpSession` 等。 - **通用软件包**:`javax.servlet` 包提供了基本的 ...

    Java Servlet API说明文档

    3. **过滤器(Filter)**:Servlet API中的`javax.servlet.Filter`接口允许开发者创建过滤器,这些过滤器可以在请求到达Servlet之前对其进行拦截和处理,或在响应返回客户端之后进行修改。过滤器可以用于实现如登录...

    JavaServletAPI的组成.pdf

    通用软件包主要包含`javax.servlet.Servlet`接口和`javax.servlet.ServletContext`接口。`Servlet`接口定义了Servlet的基本行为,比如初始化、服务和销毁方法。而`ServletContext`接口则代表了Servlet上下文,提供了...

    Jsp_Servlet_中文API档

    它包括两个主要的软件包:`javax.servlet` 和 `javax.servlet.http`。前者是通用的,不特定于HTTP,而后者则是针对HTTP协议设计的。 在`javax.servlet`包中,我们有以下几个关键接口和类: 1. **RequestDispatcher...

    Java Servlet 中文API(非常珍贵)

    2. 不对应HTTP的通用软件包,主要为javax.servlet.*,提供了基本的Servlet接口和ServletContext等,这些接口和类不依赖于任何特定的协议,适用于其他可能的请求-响应模型。 在Servlet API中,重要规范如RFC 1738、...

    Java Servlet API说明文档.doc

    1. `javax.servlet.http`:这个包专门处理HTTP协议,提供了`HttpServletRequest`和`HttpServletResponse`接口,分别用于获取和设置HTTP请求和响应的数据。此外,还有`HttpServlet`类,它是所有HTTP Servlet的基类,...

    servlet temple

    其中包括两个用于所有 Servlet 的基本软件包:javax.servlet 和 javax.servlet.http。可从sun公司的Web站点下载 Java Servlet 开发工具。 下面主要介绍javax.servlet.http提供的HTTP Servlet应用编程接口。  ...

    JavaEE Servlet2.1说明文档

    2. 通用软件包:不依赖特定协议,提供了如`javax.servlet.GenericServlet`等基础类和接口,可用于实现任何请求-响应协议的Servlet。 二、相关规范 Servlet API的设计和实现受到多个Internet规范的影响,例如: - ...

Global site tag (gtag.js) - Google Analytics