[size=16px][size=11px]小弟我用的开发工具:
eclipse3.2+myeclipse5.5 tomcat6.0 jdk1.6 mysql5.0 项目名:usermanagement其中struts所需要的jar,hibernate所需要的jar包,是通过手动引入的struts包:直接在myeclipse下复制到lib下hibernate包:首先通过window->reference->java->buildpath->userlibrary->建立hibernate包(hibernate),并导入所有hibernate需要的包,以及mysql所需要的包.通过项目把hibernate包引进来.基本的包引入就这样的.在写完项目后发布项目,去查看webapps/usermanagement/WEB-INF/lib下面的东西,发现只有struts包,并没有hibernate包.接着运行项目,这时候就有错误了:java.lang.NoClassDefFoundError: org/dom4j/DocumentException
                          ....
                          ....
在网上查了一下,说是没用引入dom4j.jar包,我看了hibernate包下面,有这个jar包,这就搞不懂了?为何会有这样的异常现象?估计后面还会有其它的会说因为hibernate包没有引入而导致的错误,这到底是为什么?是不是我上面引入包的过程错误了?需要不需要我把hibernate所有的包复制到项目的lib下面,"如果是,怎么会这样,为何myeclipse不会帮我把hibernate所需要的jar下面的包放到lib下面,每次都要自己这样吗,别告诉我可以用classpath引入,那还是算了."难道是myecliplse的问题?     可不可以详细讲解一下.我才没学hibernate多长时间,希望大家帮我个忙,我在这谢谢大家了.真的,我真得被这个问题弄得很郁闷,因为之前我也做过一个"struts+hibernate实现用户登录"也出现这个问题(问题是不一样的,但都是说没有引入biernate包而导致的),我当时实在没办法,就直接将hibernate所需要包拷贝到webapps下中的项目中的lib下,才解决因为hibernate包的问题.

解决方案 »

  1.   

    刚试了,把dom4j.jar文件放到了lib下面,在运行,又出现下面的异常:
    java.lang.NoClassDefFoundError: org/apache/commons/collections/SequencedHashMap说是有冲突.哎,无语了现在.
      

  2.   

     操作XML文件为什么要加jaxen-1.1-beta-6.jar,只有dom4j.jar不行吗?
    不行,去掉此jar包后因为程序中用到方法.selectNode()等会报NoClassFoundException加入jaxen-1.1-beta-6.jar这个jar包试试。GOOD LUCK,楼主
      

  3.   

    Hibernate包也直接拷到lib下,不能用user library
      

  4.   

    hibernate包:首先通过window->reference->java->buildpath->userlibrary->建立hibernate包(hibernate),并导入所有hibernate需要的包,以及mysql所需要的包.你这不是矛盾吗?你之前说的是上面的这样,现在怎么又成了直接拷贝hibernate包到lib下面的呢。
    到底是哪一个?我觉得你最好统一一下,要么添加框架jar包时,用IDE添加支持,要么直接全部拷贝到lib下面。
      

  5.   

    引包把所有的jar拷贝到lib目录下,然后在能看lib下jar包的试图里,挨个检查有没名字相同只是版本不同的jar,如果有把低版本的删除。
      

  6.   

    6楼说的不错,不要用user library了,都拷贝到lib中,有低版本和高版本在一起的,把低版本删掉
      

  7.   


    我不是说了吗,通过第一种方法引入进来,发现项目下的lib包下面根本没用hibernate的jar包,出现那个问题:java.lang.NoClassDefFoundError: org/dom4j/DocumentException 然后我就把dom4j.jar文件拷贝到项目的lib下,就没了那个错误了,有了二楼的那个错误了.
      

  8.   

    明显是环境没有配置好啊,如果你想用 myeclipse帮你加jar,那就都用它的加好了,要不你都自己把jar加到 web-info/lib下好了,不用这么麻烦,开发一定要遵循一些正确的步骤和方法,要不习惯没有养好,不管做什么,都会碰到很多问题的。
      

  9.   

    jar版本冲突问题搞死人的,问题得个个击破,真不行了,把jar全部删掉,搞个你一起能跑起来的项目在将jar全部添进去、、、版本问题没必要深究、