1

このチュートリアルを試してみると、JPAとHibernateは初めてです 。次のプロバイダーをpersistence.xmlに追加しました。

<provider>org.hibernate.ejb.HibernatePersistence</provider> 

そして、私はこのエラーが発生しています。

log4j:WARN No appenders could be found for logger (org.jboss.logging).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
Exception in thread "main" java.lang.NoSuchMethodError: org.hibernate.cfg.Configuration.addAnnotatedClass(Ljava/lang/Class;)Lorg/hibernate/cfg/Configuration;
    at org.hibernate.ejb.Ejb3Configuration.addAnnotatedClass(Ejb3Configuration.java:1421)
    at org.hibernate.ejb.Ejb3Configuration.addNamedAnnotatedClasses(Ejb3Configuration.java:1391)
    at org.hibernate.ejb.Ejb3Configuration.addClassesToSessionFactory(Ejb3Configuration.java:1184)
    at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:1048)
    at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:291)
    at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:373)
    at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:56)
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:48)
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:32)
    at de.vogella.jpa.simple.main.Main.main(Main.java:17)

このエラーの解決にご協力ください。ありがとうございました

4

4 に答える 4

5

addAnnotatedClassHibernateのバージョンを確認してください。次の方法を使用するには、hibernate-core3.6.0以降が必要です。org.hibernate.cfg.Configuration

于 2013-02-19T13:45:11.133 に答える
4

HibernateAnnotationjarが間違っているようです。jarバージョンとは互換性がありません。だからそれはそれが表示されている理由です"java.lang.NoSuchMethodError"

現在使用しているjarのバージョンを教えてください。バージョンを指定してください。そうすれば、これに簡単に対処する必要があります。

現在作業しているHibernateのバージョンはどれですか?

現在作業しているアノテーションのバージョンはどれですか?

バージョンを指定してください。ありがとう。

于 2013-02-19T13:43:10.270 に答える
1

加えて:

私は同じ問題に直面し、答えを探してこのページにアクセスしましたが、これらの答えはどれも役に立ちませんでした。誰かが同じ問題を通過した場合:

がありArrayList<Entity>、配列リストに項目を追加したいときに、NoSuchMethodExceptionが発生しました。問題は、である必要があるということでしArrayListArray

于 2013-05-14T10:18:17.260 に答える
1

次の依存関係を使用してください...

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-entitymanager</artifactId>
    <version>4.3.6.Final</version>
</dependency>
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-core</artifactId>
    <version>3.6.4.Final</version>
</dependency>
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-annotations</artifactId>
    <version>3.5.5-Final</version>
</dependency>
<dependency>
    <groupId>org.hibernate.common</groupId>
    <artifactId>hibernate-commons-annotations</artifactId>
    <version>4.0.4.Final</version>
</dependency>
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.7</version>
</dependency>
于 2014-10-05T05:56:45.840 に答える