【问题标题】:Java/eclipse/hibernateJava/日食/休眠
【发布时间】:2010-01-13 15:29:08
【问题描述】:

我是 .net 开发人员,通常使用 nhibernate 执行此操作,并且可以正常工作。我正在做一个需要用 Java 编写的项目并且有以下问题:

到目前为止,我只有一个在 Eclipse 中设置的空白 Java 项目。我在包资源管理器的 Referenced Libraries 节点中有 C:\work\lib\java\cp\hibernate3.jar。

在我的代码(主要)中我正在这样做

Configuration config = new Configuration().
            setProperty("hibernate.dialect", "org.hibernate.dialect.HSQLDialect").
            setProperty("hibernate.connection.driver_class", "org.hsqldb.jdbcDriver").
            setProperty("hibernate.connection.url", "jdbc:hsqldb:mem:RefenceDb").
            setProperty("hibernate.connection.username", "sa").
            setProperty("hibernate.connection.password", "").
            setProperty("hibernate.connection.pool_size", "1").
            setProperty("hibernate.connection.autocommit", "true").
            setProperty("hibernate.cache.provider_class", "org.hibernate.cache.HashtableCacheProvider").
            setProperty("hibernate.hbm2ddl.auto", "create-drop").
            setProperty("hibernate.show_sql", "true").
            addClass(Boy.class);

在我的控制台中:

Exception in thread "main" java.lang.NoClassDefFoundError: org/dom4j/DocumentException
    at ReferenceApplication.Main.main(Main.java:15)
Caused by: java.lang.ClassNotFoundException: org.dom4j.DocumentException
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClassInternal(Unknown Source)
    ... 1 more

有什么想法吗?

路径 C:\work\lib\java\cp\ 在类路径中

w://

【问题讨论】:

    标签: java eclipse hibernate


    【解决方案1】:

    虽然此处引用 dom4j 的其他答案是正确的,但您很快就会发现有十几个其他依赖项。

    从头开始是一项崇高的追求,但我实际上建议先安装Maven(用于依赖管理)并从命令行运行mvn archetype:generate。如果您正在做一个 Web 应用程序(您可能不是基于问题文本)选择“maven-archetype-j2ee-simple”或“maven-archetype-webapp”将是一个很好的启动。这样做将为您设置一个项目,然后可以在 eclipse 中使用(您甚至可以使用 m2eclipse 插件在 eclipse 中进行依赖管理)。

    事实证明,Maven 有自己的学习曲线,但我认为收益大于成本。

    祝你好运!

    【讨论】:

    【解决方案2】:

    下载 dom4j 并将其放在您的类路径中(在引用的库选项卡中)

    【讨论】:

      【解决方案3】:

      从堆栈跟踪来看,您似乎缺少 dom4j.jar。 Hibernate(用于 Java)有很多依赖项。确保您已将所有 Hibernates 所需的依赖项添加到您的 Eclipse 项目中。

      【讨论】:

        【解决方案4】:

        您需要将 dom4j jar 放在您的类路径中。你应该可以在这里得到它:

        http://www.dom4j.org/download.html

        我认为hibernate使用的是1.6.1版本

        【讨论】:

          【解决方案5】:

          为了让这一切变得更容易,我会快速学习Maven,然后使用m2eclipse 插件。 我知道这是一个学习曲线,但它会使部署时的一切变得更加容易。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2011-11-06
            • 2018-12-21
            • 1970-01-01
            • 1970-01-01
            • 2015-06-24
            • 2011-09-18
            • 2010-11-25
            相关资源
            最近更新 更多