我有一个用于我的数据库模型和JPA控制器的API,我将AProject
的jar添加到我的BProject
。当我在BProject
。
错误是No Persistence provider for EntityManager named "MyPersistenceUnitName" in my "BProject"
。
是否有可能或应该创建我在AProject
中调用的内容?
答案 0 :(得分:0)
是的,您可以重复使用AProject.jar中的代码。根据{{3}}:
META-INF目录包含的JAR文件或目录 persistence.xml被称为持久性单元的根。范围 持久性单元的长度由持久性单元的根确定。 必须使用唯一的名称标识每个持久性单元 持久性单位的范围。
持久单元可以打包为WAR或EJB JAR文件的一部分或 可以打包为JAR文件,然后可以包含在WAR或 EAR文件。
如果将持久性单元打包为EJB JAR中的一组类 文件,persistence.xml应该放在EJB JAR的META-INF中 。目录
如果将持久性单元打包为WAR文件中的一组类, persistence.xml应该位于WAR文件中 WEB-INF / classes / META-INF目录。
如果将持久性单元打包在一个JAR文件中 包含在WAR或EAR文件中的JAR文件应位于 任
WAR的WEB-INF / lib目录
EAR文件的库目录