ホームページ > Java > &#&チュートリアル > Hibernate を 4.2.5 から 4.3.0 にアップグレードすると、javax.persistence.Table.indexes() で NoSuchMethodError が発生するのはなぜですか?

Hibernate を 4.2.5 から 4.3.0 にアップグレードすると、javax.persistence.Table.indexes() で NoSuchMethodError が発生するのはなぜですか?

Linda Hamilton
リリース: 2024-11-26 13:12:12
オリジナル
1026 人が閲覧しました

Why Does Upgrading Hibernate from 4.2.5 to 4.3.0 Cause a NoSuchMethodError for javax.persistence.Table.indexes()?

NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index;

問題:

Hibernate からのアップグレード時4.2.5 から 4.3.0 では、例外が発生しました:

NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index;
ログイン後にコピー

この問題は Hibernate バージョン 4.2.6 ~ 4.2.8 では発生しますが、4.2.5 では発生しません。

解決策:

問題は依存関係が原因で発生しますPlay Java JPA と Hibernate 4.3 の間の競合。 Play Java JPA は JPA 2.0 仕様に依存しますが、Hibernate 4.3 は新しい JPA 2.1 仕様を利用します。

修正:

次のコードを追加して build.sbt ファイルを変更します。依存関係:

libraryDependencies ++= Seq(
javaJdbc,
javaJpa.exclude("org.hibernate.javax.persistence", "hibernate-jpa-2.0-api"),
"org.hibernate" % "hibernate-entitymanager" % "4.3.0.Final"
)
ログイン後にコピー

このステップでは、 JPA 2.0 に依存しており、JPA 2.1 のみが使用されるようにします。この解決策は、Play 2.2.x バージョンに適用されます。

注:

この問題は、Play の以前のバージョンでは異なる修正が必要になる場合があります。

以上がHibernate を 4.2.5 から 4.3.0 にアップグレードすると、javax.persistence.Table.indexes() で NoSuchMethodError が発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート