Java / затмение / спящий режим - PullRequest
1 голос
/ 13 января 2010

Я - .net dev, обычно делаю это с помощью nhibernate и могу нормально с этим работать. Я делаю проект, который должен быть написан на Java и имеет следующую проблему:

Все, что у меня есть, - это пустая настройка проекта Java в Eclipse. У меня есть 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 \ находится в пути к классам

ш: //

Ответы [ 5 ]

5 голосов
/ 13 января 2010

В то время как другие ответы здесь, ссылающиеся на dom4j, верны, вы скоро найдете там дюжину или около того других зависимостей.

Начинать с нуля - благородное занятие, но я бы действительно рекомендовал начать с установки Maven (для управления зависимостями) и запуска mvn archetype:generate из командной строки. Если вы работаете с веб-приложением (которое, возможно, не основано на тексте вопроса), выбор «maven-archetype-j2ee-simple» или «maven-archetype-webapp» был бы неплохим кикстартом. Это создаст для вас проект, который затем можно будет использовать в eclipse (вы даже можете использовать плагин m2eclipse для управления зависимостями из eclipse).

Оказывается, у Maven есть собственная кривая обучения, но я считаю, что выгоды перевешивают затраты.

Удачи!

4 голосов
/ 13 января 2010

Загрузите dom4j и поместите его в свой путь к классам (на вкладке библиотек, на которые есть ссылки)

1 голос
/ 13 января 2010

Вам нужно положить банку dom4j на ваш путь к классу. Вы должны быть в состоянии получить это здесь:

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

Я думаю, что Hibernate использует версию 1.6.1

1 голос
/ 13 января 2010

Судя по трассировке стека, похоже, что вам не хватает dom4j.jar.Hibernate (для Java) имеет массу зависимостей.Убедитесь, что все необходимые для Hibernates зависимости добавлены в ваш проект Eclipse.

0 голосов
/ 16 января 2010

Чтобы сделать все это проще, я бы быстро выучил Maven и затем использовал плагин m2eclipse . Я знаю, что это кривая обучения, но она сделает все намного проще во время развертывания.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...