问题描述
importjava.io.*;importjavax.servlet.*;importjavax.servlet.http.*;classHelloextendsHttpServlet{//publicvoidinit(){//}publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{response.setContentType("text/html");PrintWriterout=response.getWriter();out.println("<fontsize=7color=red>HELLOWORLD,JKLEE</font>");}publicvoiddestory(){}}
编译没出错,运行出错:Exceptioninthread"main"java.lang.NoSuchMethodError:main
解决方案
解决方案二:
你不会是直接在运行servlet吧servlet要配置到web容器里才能运行
解决方案三:
楼上,servlet要配置到web容器里才能运行?如何配置到web容器里?
解决方案四:
装的web服务器是tomcat.classpath是这样设置的:.;%java_home%libtools.jar;%java_home%libdt.jar;%java_home%jrelibextservlet-api.jar此程序编译没有错误,就是运行时有这种错。
解决方案五:
呵呵,楼主好可爱啊Servlet需要放到Servlet容器中哦,还得配置一下web.xml文件,而且你这个Servlet最好带有package。1:把这个Servlet改为public的,再加上packagecom;2:编译时在你原有的基础上加上-d.参数javac-d.-cp.;%java_home%libtools.jar;%java_home%libdt.jar;%java_home%jrelibextservlet-api.jarcom/Hello.java
3:找到tomcat中的webapps目录,在里面建个文件夹,比如叫hello吧,然后在hello中再建一个WEB-INF的文件夹,在这个WEB-INF中再建个classes的文件夹,把刚才编译后的com目录和Hello.class拷进来4:在WEB-INF目录中新建个文件web.xml,内容如下:<?xmlversion="1.0"encoding="GBK"?><web-appxmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns="http://java.sun.com/xml/ns/javaee"xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"xsi:schemaLocation="http://java.sun.com/xml/ns/javaeehttp://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"id="WebApp_ID"version="2.5"><display-name>hello</display-name><servlet><servlet-name>Hello</servlet-name><servlet-class>com.Hello</servlet-class></servlet><servlet-mapping><servlet-name>Hello</servlet-name><url-pattern>/hello</url-pattern></servlet-mapping></web-app>
5:在系统中建一个JAVA_HOME的环境变量,指向JDK目录6:在控制台中进入到tomcat的bin目录,输入start回车,等看到startupin1234ms.后打开浏览器,访问:http://localhost:8080/hello/hello看看能看到效果不?
解决方案六:
朋友,javaweb中所有的类都存在与包中!没有无包的类!只是一点很重要的!还有要放到web容器里面运行,web.xml配置也要注意!祝福楼主!