关于java:persistence.xml在Maven测试期间未找到

关于java:persistence.xml在Maven测试期间未找到

persistence.xml not found during maven testing

我正在尝试在进行集成测试的Maven构建期间将测试数据加载到测试数据库中。 persistence.xml已正确复制到target/test-classes/META-INF/,但是运行测试时出现此异常。

javax.persistence.PersistenceException:
No Persistence provider for
EntityManager named aimDatabase

似乎没有找到或加载persistence.xml。


使用基于Maven / Eclipse的JPA项目解决了相同的问题。

我的META-INF目录在src/main/java下,其后果是在测试阶段之前未将其复制到目标目录。

将此目录移动到src/main/resources可解决此问题,并确保在运行测试时target/classes中存在META-INF/persistence.xml文件。

我认为JPA方面将我的META-INF/persistence.xml文件放在了src/main/java中,这实际上是我的问题的根源。


我正在使用Maven2,但是我忘记在我的pom.xml文件中添加此依赖项:

1
2
3
4
5
 <dependency>
   <groupId>org.hibernate</groupId>
   hibernate-entitymanager</artifactId>
   <version>3.4.0.GA</version>
 </dependency>

您的persistence.xml是否位于scr / test / resources中?原因我遇到了类似的问题。

一切正常,只要我的persistence.xml位于src / main / resources中即可。

如果我将persistence.xml移至src / test / resources,则无法再使用了。

唯一有用但可悲的答案是在这里:http://jira.codehaus.org/browse/SUREFIRE-427

似乎出于未知原因,目前尚不可能。 :-(


我有同样的问题,不是不是找不到persistence.xml文件,而是找不到XML中指定的提供程序。

确保在xml文件中具有正确的JPA提供程序依赖关系和正确的提供程序定义。

即。 <provider>oracle.toplink.essentials.PersistenceProvider</provider>

使用Maven,我必须在本地安装2个toplink-essentials jar,因为没有公共存储库可以保存依赖关系。


如果在Windows上,则可以使用sysinternal的procmon来确定它是否在检查正确的路径。

只需按路径过滤->包含-> persistence.xml。 Procmon将采取任何尝试打开名为persistenc.xml的文件的尝试,您可以检查查看尝试的一个或多个路径。

有关procmon的详细信息,请参见此处:http://technet.microsoft.com/zh-cn/sysinternals/bb896645.aspx


我们遇到了同样的问题,对项目进行了一些调整,最后找到了以下内容
问题(更清晰的错误描述):
在oracle.toplink.essentials.ejb.cmp3.persistence中。
PersistenceUnitProcessor.computePURootURL(PersistenceUnitProcessor.java:248)

利用这些信息,我们回顾了一条主要规则:
路径名中没有白色空间!

尝试一下。为我们工作的微笑。
也许有一天这将得到解决。

希望这对您有用。祝你好运。


推荐阅读

    linux测试dns命令?

    linux测试dns命令?,系统,网络,地址,服务,客服,环境,状态,基础,管理,命令,linu

    测试linux常用命令?

    测试linux常用命令?,工作,地址,系统,信息,命令,目录,情况,标准,功能,控制台,l

    测试linux常用命令?

    测试linux常用命令?,工作,地址,系统,信息,命令,目录,情况,标准,功能,控制台,l

    linux中未找到命令?

    linux中未找到命令?,软件,系统,档案,命令,服务,电脑,第一,分析,异常,环境,lin

    linux命令测试客户端?

    linux命令测试客户端?,地址,系统,网络,工具,工作,分析,环境,命令,下行,资料,l

    linux终端未找到命令?

    linux终端未找到命令?,系统,名字,软件,工具,第一,数据,命令,终端,文件,界面,L

    linux常用命令未找到?

    linux常用命令未找到?,地址,工作,系统,信息,命令,标准,目录,常用命令,控制

    linux测试url命令?

    linux测试url命令?,系统,网络,地址,基础,分析,工作,命令,实战,管理,认证,如何

    is未找到命令linux?

    is未找到命令linux?,系统,网络,信息,管理,工具,状态,命令,服务,密码,手机,lin

    测试linux一般命令?

    测试linux一般命令?,工作,系统,地址,信息,命令,管理,数据,标准,单位,目录,lin

    linux命令测试流量?

    linux命令测试流量?,工具,系统,实时,网址,网络,情况,地址,状态,时间,电脑,查

    测试用的linux命令?

    测试用的linux命令?,地址,系统,工作,信息,网络,管理,基础,命令,电脑,目录,软

    linux性能测试命令?

    linux性能测试命令?,数据,系统,工具,标准,设备,地址,情况,基础,网络,环境,如

    linux并发测试命令?

    linux并发测试命令?,网络,地址,系统,工作,服务,网址,检测,软件,标准,信息,lin

    linux未找到解压命令?

    linux未找到解压命令?,电脑,系统,文件,工具,手机,平台,信息,命令,终端,目录,l

    linux系统未找到命令?

    linux系统未找到命令?,软件,系统,名字,第一,命令,代理,电脑,服务,位置,工具,

    linux操作命令测试?

    linux操作命令测试?,网络,系统,地址,情况,工作,命令,状态,分析,检测,标准,Lin

    手机上测试linux命令?

    手机上测试linux命令?,地址,工作,电脑,软件,手机,系统,名字,网络,信息,平台,l

    linux报错未找到命令?

    linux报错未找到命令?,系统,工具,环境,命令,密码,服务,状态,数据,时报,管理,L

    linux系统测试命令?

    linux系统测试命令?,系统,工作,地址,标准,信息,命令,数据,单位,软件,目录,软