sbl*_*ndy 9 java testing automated-tests maven-2 jpa
我正在尝试在用于集成测试的maven构建期间将测试数据加载到测试数据库中.persistence.xml正在被target/test-classes/META-INF/正确复制,但是在运行测试时我得到了这个异常.
javax.persistence.PersistenceException:没有名为aimDatabase的EntityManager的持久性提供程序
看起来它没有找到或加载persistence.xml.
小智 16
刚刚解决了基于Maven/Eclipse的JPA项目的同样问题.
我的META-INF目录下面src/main/java有一个概念,它在测试阶段之前没有被复制到目标目录.
移动此目录以src/main/resources解决问题并确保META-INF/persistence.xml在target/classes运行测试时文件存在.
我认为 JPA方面把我的META-INF/persistence.xml文件放进去src/main/java,结果证明是我问题的根源.
小智 6
我正在使用Maven2,我忘了在我的pom.xml文件中添加这个依赖项:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>3.4.0.GA</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
如果这是在 Windows 上,您可以使用 sysinternal 的 procmon 来查明它是否检查了正确的路径。
只需按路径过滤 -> contains -> persistence.xml。Procmon 将接受任何打开名为 persistenc.xml 的文件的尝试,您可以检查以查看尝试的路径。
有关 procmon 的更多详细信息,请参阅此处:http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx
| 归档时间: |
|
| 查看次数: |
15197 次 |
| 最近记录: |