【发布时间】:2014-11-25 02:53:57
【问题描述】:
我有一个 maven 项目,一个独立的 JPA 工具。
这个主项目依赖于另一个包含所有实体类的 maven 项目。
但是,JPA 似乎不会自动找到我的实体。我的 Eclipse 项目 > 属性 > jpa > 自动发现也已启用。
我的persistence.xml:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
<persistence-unit name="myapp-ds" transaction-type="RESOURCE_LOCAL">
<description>Vecchio</description>
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
<property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver" />
<property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/myapp" />
<property name="javax.persistence.jdbc.user" value="root" />
<property name="javax.persistence.jdbc.password" value="xxx" />
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect" />
<property name="hibernate.show_sql" value="true" />
<property name="hibernate.archive.autodetection" value="class"/>
</properties>
</persistence-unit>
</persistence>
它位于 target/classes/META-INF。
使用实体时的错误是:
Exception in thread "main" java.lang.IllegalArgumentException: Unknown entity: model.legacy.dto.myentity
at org.hibernate.jpa.spi.AbstractEntityManagerImpl.persist(AbstractEntityManagerImpl.java:1184)
at it.test.Main.main(Main.java:23)
【问题讨论】:
标签: java hibernate maven jakarta-ee jpa