今天做一个工具,用了一下servlet,一直报错,提示servlet类找不到,HTTP Status 500 - Error instantiating servlet class Servlet.hello 或者就是
java.lang.ClassNotFoundException: com.yunlong.Servlet.urlDao
在网上查找原因,很多说是因为class文件找不到,一步到位的解答...
后来我发现可能有的原因有以下几点:
1.如果是在eclipse里面搭建的web项目,就要注意eclipse里面把java源文件生成的class文件的位置问题,默认是会创建一个build目录来存放class文件,但是我们一般会默认在根目录(WebContent)下面查找源文件,所以我们需要手动把build目录下面的class文件转移到根目录下面,也可以右键项目,选择properties->java build path ,选择左边的source,在下面把Default output folder修改为 项目名/Webcontent/classes这样就可以了
2.需要注意的一点就是在myeclipse里面创建的wen项目的根目录是WebRoot,而且myeclipse里面创建项目的时候,默认class文件的存放目录好像就是根目录了,所以有时间从myeclipse那边转过来用eclipse的时候会有点不习惯的。
3.就是可能在web.xml文件里面的<servlet></servlet>标签里面的<servlet-class></servlet-class>里面把类的名写错了。
我在敲代码的时候的把上面三点全部占了(捂脸)。