大家好, 为什么我在dos 下使用 javac 不能够编译这个程序的呢?
我的环境变量已经设置正确的了
大家看看我写的代码:
我是按照书本直接输入进去的,而在ECLIPSE下写这个代码显示正确的,但是在DOS下却不可以编译,因为测试的时候要使用他的CLASS文件,但是就在这一步卡住了我,麻烦大家帮帮小弟解决问题,谢谢!
代码如下:
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;public class DispatcherServlet extends GenericServlet {
private String target = "/hello.jsp"; public void service(ServletRequest request, ServletResponse response)
throws ServletException, IOException {
String username = request.getParameter("username");
String password = request.getParameter("password");
request.setAttribute("USER",username);
request.setAttribute("PASSWORD",password);
ServletContext context = getServletContext();
RequestDispatcher dispatcher = context.getRequestDispatcher(target);
dispatcher.forward(request,response);
}
}
在DOS下编译的错误提示如下:
C:\>javac DispatcherServlet.java
DispatcherServlet.java:1: 软件包 javax.servlet 不存在
import javax.servlet.*;
^
DispatcherServlet.java:2: 软件包 javax.servlet.http 不存在
import javax.servlet.http.*;
^
DispatcherServlet.java:6: 找不到符号
符号: 类 GenericServlet
public class DispatcherServlet extends GenericServlet {
^
DispatcherServlet.java:9: 找不到符号
符号: 类 ServletRequest
位置: 类 DispatcherServlet
public void service(ServletRequest request, ServletResponse response)
^
DispatcherServlet.java:9: 找不到符号
符号: 类 ServletResponse
位置: 类 DispatcherServlet
public void service(ServletRequest request, ServletResponse response)
^
DispatcherServlet.java:10: 找不到符号
符号: 类 ServletException
位置: 类 DispatcherServlet
throws ServletException, IOException {
^
DispatcherServlet.java:15: 找不到符号
符号: 类 ServletContext
位置: 类 DispatcherServlet
ServletContext context = getServletContext();
^
DispatcherServlet.java:15: 找不到符号
符号: 方法 getServletContext()
位置: 类 DispatcherServlet
ServletContext context = getServletContext();
^
DispatcherServlet.java:16: 找不到符号
符号: 类 RequestDispatcher
位置: 类 DispatcherServlet
RequestDispatcher dispatcher = context.getRequestDispatcher(targ
et);
^
9 错误
我的环境变量已经设置正确的了
大家看看我写的代码:
我是按照书本直接输入进去的,而在ECLIPSE下写这个代码显示正确的,但是在DOS下却不可以编译,因为测试的时候要使用他的CLASS文件,但是就在这一步卡住了我,麻烦大家帮帮小弟解决问题,谢谢!
代码如下:
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;public class DispatcherServlet extends GenericServlet {
private String target = "/hello.jsp"; public void service(ServletRequest request, ServletResponse response)
throws ServletException, IOException {
String username = request.getParameter("username");
String password = request.getParameter("password");
request.setAttribute("USER",username);
request.setAttribute("PASSWORD",password);
ServletContext context = getServletContext();
RequestDispatcher dispatcher = context.getRequestDispatcher(target);
dispatcher.forward(request,response);
}
}
在DOS下编译的错误提示如下:
C:\>javac DispatcherServlet.java
DispatcherServlet.java:1: 软件包 javax.servlet 不存在
import javax.servlet.*;
^
DispatcherServlet.java:2: 软件包 javax.servlet.http 不存在
import javax.servlet.http.*;
^
DispatcherServlet.java:6: 找不到符号
符号: 类 GenericServlet
public class DispatcherServlet extends GenericServlet {
^
DispatcherServlet.java:9: 找不到符号
符号: 类 ServletRequest
位置: 类 DispatcherServlet
public void service(ServletRequest request, ServletResponse response)
^
DispatcherServlet.java:9: 找不到符号
符号: 类 ServletResponse
位置: 类 DispatcherServlet
public void service(ServletRequest request, ServletResponse response)
^
DispatcherServlet.java:10: 找不到符号
符号: 类 ServletException
位置: 类 DispatcherServlet
throws ServletException, IOException {
^
DispatcherServlet.java:15: 找不到符号
符号: 类 ServletContext
位置: 类 DispatcherServlet
ServletContext context = getServletContext();
^
DispatcherServlet.java:15: 找不到符号
符号: 方法 getServletContext()
位置: 类 DispatcherServlet
ServletContext context = getServletContext();
^
DispatcherServlet.java:16: 找不到符号
符号: 类 RequestDispatcher
位置: 类 DispatcherServlet
RequestDispatcher dispatcher = context.getRequestDispatcher(targ
et);
^
9 错误
把那几个servlet的包的加到环境变量中去
但是我是刚刚才学JAVA
可以麻烦告诉我一下详细的步骤是怎样的吗?
一定要有j2ee.jar 存在你的目录下班
谢谢,但是我刚刚看过我的LIB目录了,没有j2ee.jar
这个文件啊,请问在哪里可以复制过去呢?
或者在哪里可以下载呢?
或者去网上下个...
我刚刚从CSDN下载了j2ee.jar文件包
并且按照您的步骤设置了CLASSPATH 我也把j2ee.jar文件放到JDK安装目录的LIB文件夹里面了
但是错误还是一样
错误提示如下:
C:\>javac DispatcherServlet.java
错误: 读取 C:\jdk1.5.4\lib\j2ee.jar 时出错;error in opening zip file
DispatcherServlet.java:1: 软件包 javax.servlet 不存在
import javax.servlet.*;
^
DispatcherServlet.java:2: 软件包 javax.servlet.http 不存在
import javax.servlet.http.*;
^
DispatcherServlet.java:6: 找不到符号
符号: 类 GenericServlet
public class DispatcherServlet extends GenericServlet {
^
DispatcherServlet.java:9: 找不到符号
符号: 类 ServletRequest
位置: 类 DispatcherServlet
public void service(ServletRequest request, ServletResponse response)
^
DispatcherServlet.java:9: 找不到符号
符号: 类 ServletResponse
位置: 类 DispatcherServlet
public void service(ServletRequest request, ServletResponse response)
^
DispatcherServlet.java:10: 找不到符号
符号: 类 ServletException
位置: 类 DispatcherServlet
throws ServletException, IOException {
^
DispatcherServlet.java:15: 找不到符号
符号: 类 ServletContext
位置: 类 DispatcherServlet
ServletContext context = getServletContext();
^
DispatcherServlet.java:15: 找不到符号
符号: 方法 getServletContext()
位置: 类 DispatcherServlet
ServletContext context = getServletContext();
^
DispatcherServlet.java:16: 找不到符号
符号: 类 RequestDispatcher
位置: 类 DispatcherServlet
RequestDispatcher dispatcher = context.getRequestDispatcher(targ
et);
^
10 错误
现在问题解决了,原来是j2ee.jar我下载的包是损坏的,我刚刚在http://d.download.csdn.net/down/253198/kingquake21
这里再下载了一个正确的,编译问题解决了,谢谢