我有一个带有多个JPA / Hibernate jar的蚀项目。其中一个包含META-INF/persistence.xml
,我想通过定义自己的persistence.xml
来覆盖它。所以我尝试在persistence.xml
和src/persistence.xml
中使用我的src/META-INF/persistence.xml
,但是每次jar/META-INF/persistence.xml
似乎都被捡起。
我还尝试编辑eclipse项目的 .classpath
文件,并将 classpathentry path="bin"
移至比所包含的库更高的位置,但仍然无法拾取我的persistence.xml
<classpath>
<classpathentry kind="src" path="src/main/java"/>
<classpathentry kind="src" path="src/main/rules"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="output" path="bin"/>
<classpathentry kind="con" path="DROOLS/Drools"/>
<classpathentry kind="con" path="org.eclipse.jdt.USER_LIBRARY/drools"/>
</classpath>
在本教程中,我读到:
您将需要覆盖这些
如果您要更改默认值,
通过在其中添加自己的persistence.xml
您的类路径,默认值之前
一个在drools-persistence-jpa.jar中
最佳答案
因此,我尝试在src / persistence.xml和src / META-INF / persistence.xml中使用我的persistence.xml,但是每次看起来jar / META-INF / persistence.xml都被使用了。persistence.xml
应该位于META-INF/persistence.xml
下,这样第一次尝试将无法进行。当我查看您的.classpath
文件时,我没有将src
视为源路径,因此第二次尝试也将不起作用。
请尝试src/main/java/META-INF/persistence.xml
。
实际上,您的项目布局实际上看起来像Maven布局,并且使用Maven,资源通常转到src/main/resources
或src/test/resources
。但是,由于您没有提及要遵循的教程,因此我无法确定这是否适用于此。
无论如何,我的建议应该可行。
关于eclipse - hibernate 项目中persistence.xml的优先级,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4163520/