诡异的NoClassDefFoundError

SARA520 2008-12-22 11:17:56
发生NoClassDefFoundError,有哪些情况啊?
希望有发生过这个问题的人都说说啊

classpath绝对没错

我自己电脑上运行的好好的
拿到别人电脑上运行就出现这个错误

发生过很多次了
有的人的电脑上我把需要的JAR包放到JBOSS下面的一个LIB目录下后就没有这个问题了
但是有的还是这个问题

实在搞不清楚这个是什么问题

JAVADOC上是这么写的
当 Java 虚拟机或 ClassLoader 实例试图在类的定义中加载(作为通常方法调用的一部分或者作为使用 new 表达式创建的新实例的一部分),但无法找到该类的定义时,抛出此异常
...全文
137 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
micsolaris 2008-12-23
  • 打赏
  • 举报
回复
javadoc没说错,查找Class是有启动类装载器 》 系统类装载器 》类路径类装载器 》。。。这样一步一步下来的,找不到自然会报错啦。而且我觉得JBOSS找类的方式当到达 “类路径类装载器”这里查找的时候其实对应的并不是你在系统操作系统中设置的路径,而应该是JBOSS本身里的一个装载器查询,所以自然把对应的类放到lib里就可以解决。
SARA520 2008-12-23
  • 打赏
  • 举报
回复
越来越诡异了
早我自己电脑上都报这个错了

而且还是有时候报
有时候不报
。。。
SARA520 2008-12-23
  • 打赏
  • 举报
回复
我是在一个EJB工程里用到另一个EJB工程的接口JAR包
那该怎么放?
hbwhwang 2008-12-23
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 SARA520 的回复:]
引用 6 楼 hbwhwang 的回复:
引用 3 楼 SARA520 的回复:
我是在一个EJB工程里用到另一个EJB工程的接口JAR包
那该怎么放?

应该把另一个EJB工程的接口包拷贝到本工程


拷贝了啊
直接在工程里导入
有的可以,有的就出这个错
出错中有的把JAR包放到JBOSS下面的一个LIB目录下就可以了
有的还是不行
被它搞晕了
[/Quote]

环境的配置要先做实验,做实验的时候,一定要保证系统的干净
用最简单的内容来测试环境
不要一开始就搞复杂了,不然出了错都不知道错在哪里
SARA520 2008-12-23
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 hbwhwang 的回复:]
引用 3 楼 SARA520 的回复:
我是在一个EJB工程里用到另一个EJB工程的接口JAR包
那该怎么放?

应该把另一个EJB工程的接口包拷贝到本工程
[/Quote]

拷贝了啊
直接在工程里导入
有的可以,有的就出这个错
出错中有的把JAR包放到JBOSS下面的一个LIB目录下就可以了
有的还是不行
被它搞晕了
hbwhwang 2008-12-23
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 SARA520 的回复:]
我是在一个EJB工程里用到另一个EJB工程的接口JAR包
那该怎么放?
[/Quote]
应该把另一个EJB工程的接口包拷贝到本工程
铑枪--突廆孒 2008-12-22
  • 打赏
  • 举报
回复
如果是web项目,就把jar包放到/WEB-INF/lib中。
如果是桌面应用程序就把jar包解压后,把里边的文件夹放到你打包的jar文件中去。除了META-INF文件夹
SARA520 2008-12-22
  • 打赏
  • 举报
回复
EJB工程,我用的JBOSS
所以把接口包放在JBOSS_HOME\server\default\lib下
但是有的电脑就没这个错了
有的还是这个错

62,612

社区成员

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

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