的Java /月食/休眠

1 java eclipse hibernate

我是一个.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);
Run Code Online (Sandbox Code Playgroud)

在康复中我有:

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
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

路径C:\ work\lib\java\cp \位于类路径中

女://

dus*_*ine 5

虽然这里引用dom4j的其他答案是正确的,但你很快就会发现有十几个其他依赖项.

从全面开始是一个崇高的追求,但我实际上建议通过安装Maven(用于依赖管理)并mvn archetype:generate从命令行运行来让自己先行一步.如果您正在进行Web应用程序(可能不是基于问题文本),选择"maven-archetype-j2ee-simple"或"maven-archetype-webapp"将是一个非常好的kickstart.这样做会为你设置一个项目,然后可以在eclipse中使用(你甚至可以使用m2eclipse插件在eclipse中进行依赖管理).

事实证明,Maven有自己的学习曲线,但我认为其好处超过了成本.

祝好运!