我有一个带有以下persistence.xml文件的几个实体的JavaEE项目:
persistence.xml
... <properties> <!-- Scan for annotated classes --> <property name="hibernate.archive.autodetection" value="class"/> ...
而且似乎可行。然后将该项目作为JAR部署到两个不同的项目。其中一个persistence.xml文件与上面的文件基本相同,即使用autodetectionHibernate 的功能。但是,它似乎不起作用(因为我认为它需要在jar中加载对实体的搜索)。当我尝试手动列出两个xml文件中的所有实体时,一切正常。
autodetection
编辑: 它与 jar文件 一起使用,但仅与jar的绝对路径一起使用。对于团队项目而言,这毫无用处。
如果我没看错,在无法正常工作的情况下,实体所在的JAR与所使用的persistence.xml 不同 ,对吗?
我认为您是对的,这就是问题所在。您需要使用 jar-file 元素告诉Hibernate要扫描哪些JAR 。在这里查看 Hibernate文档中的解释和示例