gpt4 book ai didi

java - 即使给出了正确的提供程序,也会发生有关 PersistenceProvider 的 Hibernate 警告

转载 作者:行者123 更新时间:2023-12-01 12:09:56 27 4
gpt4 key购买 nike

当我尝试将 Hibernate 与本地 Derby-Database 结合使用时,我总是收到三次有关错误持久性提供程序的警告:

[WARN] HHH015016: Encountered a deprecated javax.persistence.spi.PersistenceProvider [org.hibernate.ejb.HibernatePersistence]; use [org.hibernate.jpa.HibernatePersistenceProvider] instead.
[WARN] HHH015016: Encountered a deprecated javax.persistence.spi.PersistenceProvider [org.hibernate.ejb.HibernatePersistence]; use [org.hibernate.jpa.HibernatePersistenceProvider] instead.
[WARN] HHH015016: Encountered a deprecated javax.persistence.spi.PersistenceProvider [org.hibernate.ejb.HibernatePersistence]; use [org.hibernate.jpa.HibernatePersistenceProvider] instead.

我找不到任何原因,因为我的 persistence.xml (这是项目中唯一的 persistence.xml)如下所示:

<persistence xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"
version="2.0">
<persistence-unit name="performanzdb" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
<class>...</class>
<properties>
<property name="hibernate.connection.url" value="myUrl;create=true" />
<property name="hibernate.connection.driver_class" value="org.apache.derby.jdbc.EmbeddedDriver" />
<property name="hibernate.dialect" value="org.hibernate.dialect.DerbyDialect" />
<property name="hibernate.hbm2ddl.auto" value="update" />
</properties>
</persistence-unit>
</persistence>

因此定义了正确的持久性提供程序org.hibernate.jpa.HibernatePersistenceProvider

我能想到的另一个原因是我的一些 Maven 依赖项是错误的,但这些只是最新的 entitymanager- 和 jpamodelgen-dependency:

    <dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>4.3.7.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-jpamodelgen</artifactId>
<version>4.3.7.Final</version>
</dependency>

除了开头的警告和错误:

[ERROR] HHH015011: Unable to locate static metamodel field : package.class_#field

时不时地发生新定义的字段,Hibernate 运行良好并且所有内容都按其应有的方式写入数据库中。

有谁知道为什么使用了错误的PersistenceProvider或者为什么会发生这个错误?

最佳答案

已报告类似问题here ,请看一下。

从上面的链接,

This bug also affects version 4.3.7.Final.

关于java - 即使给出了正确的提供程序,也会发生有关 PersistenceProvider 的 Hibernate 警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27332066/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com