这个小JAVA程序为什么编译不了啊?

来源:百度知道 编辑:UC知道 时间:2024/05/22 17:34:56
我想把这个JAVA程序编译成.class文件,但程序总报错,不知道怎么回事,请大家看看。源代码如下:
package test
import java.io.*
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloServlet extends HttpServlet{
public void doGet(
HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
response.setContentType("text/html");
PrintWriter out=response.getWriter();

out.println("<html><body><h1><Hello,world!</h1></body></html>");
}
}
第2行结尾好象缺少个“;”号,但加了也没用,照样报错。书上的原程序是没有“;”的!编译别的程序没问题。听一个同学说是少一个类库,具体该怎么解决呢?

首先少一个分号是编译不过的,君不闻“尽信书不如无书”,书上印刷错误还少了吗,出版社的编辑校对们可不用通过编译器来执行,但你写出来的code是要编译执行的。

这里的主要问题是Java标准版(JSDK)是不带javax.servlet扩展的,这个扩展在servlet container里,最常用的是tomcat,到apache的网站上下载安装后在lib目录下有个servlet-api.jar,加入classpath就可以编译通过了。小题大作一点可以去sun网站下载企业版(JavaEE),这个接口声明应该在一个貌似叫servlet.jar的包里面吧。

编译通过后servlet也不能在标准版runtime下直接用java运行,需要在servlet容器里运行,比如上面提到的tomcat或者JavaEE等等,我想你可能未必学到,还是踏踏实实按部就班地来吧。

你是不是没有引入servlet_API的jar包,你的程序我运行 了,没有什么总是的啊
如果是像你的同学说的,那就是没有引入这个包,我个包是在tomcat中的

你的程序是没问题的 应该是少了环境 你把MYECLIPSE装上后就没问题了

书上常出错,可能是环境问题