Exception in thread "main" java.lang.NoClassDefFoundError

shuixianzi00 2004-10-28 01:15:00
JDK目录:C:\j2sdk1.4.2_05
C:\jakarta-tomcat-5.0.27\webapps\ROOT,---是默认的目录对不对,我现在只把文件放在这里。
开始只是做了几个JSP的文件,http://localhost:8080/21.jsp 是可以出来结果的。
但是我找来HelloWorld.java,放在这里。然后我打开CMD 在BIN目录下面javac c:\jakarta-5.0.27\webapps\ROOT\HelloWorld.java,得到HelloWorld.class
然后我在BIN目录下继续:java c:\jakarta-5.0.27\webapps\ROOT\HelloWorld -----出现:Exception in thread "main" java.lang.NoClassDefFoundError: c:\jakarta-5.0.27\webapps\ROOT\HelloWorld
并且,根本不能http://localhost:8080/HelloWorld (怎么才可以这样显示结果?)
我看了一个同志的文章说这是CLASSPATH没有加.可是我加了,
我的CLASSPATH:
:C:\j2sdk1.4.2_05\bin;.;C:\j2sdk1.4.2_05\lib\dt.jar;C:\j2sdk1.4.2_05\lib\tools.jar
那么这个是一个JAVA文件了?到底怎么是SELVELT?到底是一个包含(WEB-INF。。。)是?如果我把。CLASS文件放到ROOT下的WEB-INF--CLASSES下,他是不是一个SELVELT?因为看了很多的文章,就说把CLASSES文件放在WEB-INF--CLASSES,看来看去,直接不明白了。
Exception in thread "main" java.lang.NoClassDefFoundError: c:\jakarta-5.0.27\webapps\ROOT\HelloWorld
谁能告诉我到底哪里不对?http://localhost:8080/HelloWorld ?怎么才能显示出来??

不好意思,因为怕说不清楚,写的比较详细。初学初学, 负10条手绢,给各位擦汗。。
...全文
144 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
shuixianzi00 2004-10-28
  • 打赏
  • 举报
回复
加了,就是一直404错误。。。郁闷
catblue 2004-10-28
  • 打赏
  • 举报
回复
在Tomcat目录里面的C:\Tomcat\webapps\ROOT里面按如下的文件结构:

ROOT\index.html
ROOT\welcom.jsp
ROOT\WEB-INF\lib\MyServlet.jar(如果你的servlet的.class打成了.jar文件,则放在lib下面)
ROOT\WEB-INF\classes\HelloWorld.class(把上面生成的HelloWorld.class文件放在这个里面)


Servlet必须使用C:\Tomcat\webapps\ROOT\WEB-INF这个目录下面的web.xml文件进行注册,用EP打开这个web.xml文件,在里面加入:

<servlet>
<servlet-name>HelloWorld</servlet-name>
<servlet-class>HelloWorld</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/servlet/helloworld</url-pattern>
</servlet-mapping>

  这样的结构

<servlet>
<servlet-name>HelloWorld</servlet-name>
<servlet-class>HelloWorld</servlet-class>
</servlet>

  表示指定包含的servlet类。而以下的结构:

<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/servlet/HelloWorld</url-pattern>
</servlet-mapping>

   表示指定HelloServlet应当映射到哪一种URL模式。


然后再输入http://localhost:8080/servlet/HelloWorld


catblue 2004-10-28
  • 打赏
  • 举报
回复
你在tomcat 的配置文件里加了这个servlet了吗?

81,095

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧