当前位置: 首页 > 知识库问答 >
问题:

IntelliJ 2019.1找不到persistence.xml(已添加到项目的类路径)

浦德义
2023-03-14

为了测试Hibernate/OGM/MongoDB Docker问题,我创建了一个JUnit5测试。

我已经将persistence.xml添加到项目的文件夹中:

SRC/Test/Meta-Inf

<?xml version="1.0" encoding="UTF-8"?>

<persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence
             http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd"
             version="2.1">


    <persistence-unit name="goStopHandleMongoDBPersistenceUnit" transaction-type="JTA">

        <provider>org.hibernate.ogm.jpa.HibernateOgmPersistence</provider>

        <properties>

            <property name="jboss.as.jpa.providerModule" value="org.hibernate:5.3"/>

            <property name="wildfly.jpa.hibernate.search.module" value="org.hibernate.search.orm:5.10"/>

            <!-- <property name="hibernate.transaction.jta.platform" value="JBossTS"/> -->
            <!-- <property name="hibernate.transaction.jta.platform" value="org.hibernate.service.jta.platform.internal.JBossAS"/> -->
            <property name="hibernate.transaction.jta.platform"
                      value="org.hibernate.service.jta.platform.internal.JBossStandAloneJtaPlatform"/>
            <property name="hibernate.ogm.datastore.provider"
                      value="org.hibernate.ogm.datastore.mongodb.impl.MongoDBDatastoreProvider"/>
            <property name="hibernate.ogm.datastore.grid_dialect"
                      value="org.hibernate.ogm.datastore.mongodb.MongoDBDialect"/>
            <property name="hibernate.ogm.datastore.database" value="goStopHandleDB"/>
            <property name="hibernate.ogm.datastore.host" value="172.17.0.2:32844"/>
        </properties>
    </persistence-unit>

</persistence>

我进入了项目设置和下面:

然而,当我运行测试时,我得到:

Apr 08 2019 2:36:54 PM org.hibernate.jpa.boot.internal.persistenceXMLParser doResolve信息:hhh000318:在类路径中找不到任何Meta-INF/persistence.xml文件Apr 08 2019 2:36:54 PM org.hibernate.jpa.boot.internal.persistenceXMLParser doResolve信息:hhh000318:在类路径中找不到任何Meta-INF/persistence.xml文件

测试已忽略。

PersistenceException:没有名为goStopHandleMongoDBPersistenceUnit的EntityManager的持久性提供程序

为什么没有找到persistence.xml?蒂娅。

共有1个答案

季俭
2023-03-14

使用标准的src/test/resources资源根目录,特别是如果您使用的是Maven这样的构建系统。

如果persistence.xml放在src/test/resources/meta-inf/persistence.xml中,则应该可以工作。

 类似资料:
  • 这是我的清单文件 此处为我得错误堆栈跟踪:

  • 我试图添加JPA到我的项目,但总是得到这些错误: 但是当我尝试初始化我的实体管理器时: 我收到了这些错误,但我不明白这是怎么可能的,然后我清楚地将该文件添加到我的数据库中。罐子 坚持不懈xml内容是: 这里可以看到项目和编译的jar的结构(持久性内容更改为2.2版本,如前所述): 我做错了什么? 更新:即使查找命令返回文件存在于正确的目录: 更多更新:我试图从另一个项目复制persistence.

  • 我有3个项目,ProjectB,ProjectC。 当我构建ProjectB时,它没有任何问题。但是当我试图构建ProjectA时,它在控制台上出现以下错误而失败。 评估项目“:ProjectB”时出现问题。在项目:ProjectB中找不到路径为:ProjectC的项目。 build.gradle-ProjectC settings.gradle-ProjectC build.gradle - 项

  • 在Eclipse中,我创建了RCP插件项目。 我还创建了简单的java项目。 我添加了简单的java项目来构建RCP项目的路径。 因此,我能够在RCP中导入和编译代码,但当我启动RCP应用程序时,在到达使用添加的java项目的代码时,我会遇到异常: 如何解决这个问题(无需创建java项目的jar并将其作为库添加到rcp项目中)?

  • 在彻底搜索了这些论坛寻找答案后,我找不到一个类似于我的案例。 在使用maven生成WAR filer并部署我的服务器之后,每次我向需要创建DAO的API发送GET请求时,我都会在服务器控制台收到以下警告: 在类路径中找不到任何meta-inf/persistence.xml文件 和以下例外情况: 没有名为mim_ajuda的EntityManager的持久性提供程序 在进一步讨论之前,我已经搜索了