为什么 Quarkus-Hibernate 在我们已经给出 @DataSource 的情况下寻找 Persistance.xml?

Why Quarkus-Hibernate is looking for Persistance.xml when we have already given @DataSource?

我正在尝试构建休眠项目,我在

中提到了属性
cron.expr=* 12 15 * * ?

quarkus.datasource.driver=oracle.jdbc.driver.OracleDriver
quarkus.hibernate-orm.dialect=oracle.jdbc.driver.OracleDriver
quarkus.datasource.ergo.url=jdbc:oracle:thin:@myhost:1521:orcl
quarkus.datasource.ergo.driver=oracle.jdbc.driver.OracleDriver
quarkus.datasource.ergo.username=quarkus_test
quarkus.datasource.ergo.password=quarkus_test

quarkus.datasource.mds.url=jdbc:oracle:thin:@myhost:1521:orcl
quarkus.datasource.mds.driver=oracle.jdbc.driver.OracleDriver
quarkus.datasource.mds.username=quarkus_test
quarkus.datasource.mds.password=quarkus_test

在 运行 之后,它在信息中给出以下消息:

HHH000318: Could not find any META-INF/persistence.xml file in the classpath

我应该在persistance.xml中写什么? quakus persistance.xml 会是什么样子?当我们在 java class

中提供 @Datasource 注释时,是否真的需要

以下是persistance.xml之前部署在wildfly中的项目:

<persistence version="2.1"
             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">

    <persistence-unit name="ePU" transaction-type="JTA">
        <jta-data-source>java:/datasources/EDS</jta-data-source>
    </persistence-unit>

    <persistence-unit name="mPU" transaction-type="JTA">
        <jta-data-source>java:/datasources/MDS</jta-data-source>
    </persistence-unit>

</persistence>

persistence.xml 是可选的,这只是来自 Hibernate 的 INFO 消息,您可以安全地忽略它。

Quarkus bootstrap 在构建时休眠而不需要 persistence.xml 文件,如果你想要扩展配置,你可以添加它,但在大多数情况下,这是不需要的。