You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Quarkus集成Hibernate与PostgreSQL时遇WstxInputFactory找不到错误

问题:Quarkus集成Hibernate与PostgreSQL启动报错(缺失WstxInputFactory)

问题背景

我正在学习Quarkus后端开发,想要集成Hibernate与PostgreSQL,在Gradle中添加了以下两个依赖:

implementation("io.quarkus:quarkus-hibernate-orm-panache")
implementation("io.quarkus:quarkus-jdbc-postgresql")

启动时抛出错误,查阅相关帖子后推测是依赖冲突导致,可能存在不同版本的库,但已花费5小时尝试多种方案仍未解决。

版本信息:

  • Quarkus版本:3.1.2.Final
  • Kotlin版本:1.8.10

启动错误日志

Failed to start quarkus: java.lang.RuntimeException: io.quarkus.builder.BuildException: Build failure: Build failed due to errors
    [error]: Build step io.quarkus.narayana.jta.deployment.NarayanaJtaProcessor#build threw an exception: javax.xml.stream.FactoryConfigurationError: Provider com.ctc.wstx.stax.WstxInputFactory not found
    at javax.xml.stream.XMLInputFactory.newInstance(Unknown Source)
    at com.arjuna.common.util.propertyservice.PropertiesFactoryStax.loadFromXML(PropertiesFactoryStax.java:46)
    at com.arjuna.common.util.propertyservice.AbstractPropertiesFactory.loadFromFile(AbstractPropertiesFactory.java:150)
    at com.arjuna.common.util.propertyservice.AbstractPropertiesFactory.getPropertiesFromFile(AbstractPropertiesFactory.java:102)
    at com.arjuna.common.util.propertyservice.AbstractPropertiesFactory.initDefaultProperties(AbstractPropertiesFactory.java:196)
    at com.arjuna.common.util.propertyservice.AbstractPropertiesFactory.getDefaultProperties(AbstractPropertiesFactory.java:62)
    at com.arjuna.common.util.propertyservice.PropertiesFactory.getDefaultProperties(PropertiesFactory.java:48)
    at io.quarkus.narayana.jta.deployment.NarayanaJtaProcessor.build(NarayanaJtaProcessor.java:124)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:909)
    at io.quarkus.builder.BuildContext.run(BuildContext.java:282)
    at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
    at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2513)
    at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1538)
    at java.base/java.lang.Thread.run(Thread.java:829)
    at org.jboss.threads.JBossThread.run(JBossThread.java:501)

当前build.gradle.kts依赖配置

dependencies {
    implementation(enforcedPlatform("${quarkusPlatformGroupId}:${quarkusPlatformArtifactId}:${quarkusPlatformVersion}"))

    implementation("io.quarkus:quarkus-arc")

    implementation("io.quarkus:quarkus-kotlin")
    implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
    implementation("com.fasterxml.jackson.module:jackson-module-kotlin")

    implementation("io.quarkus:quarkus-cache") // Local cache in-memory

    implementation("io.quarkus:quarkus-resteasy-reactive")
    implementation("io.quarkus:quarkus-resteasy-reactive-jackson")

    implementation("io.quarkus:quarkus-rest-client-reactive")
    implementation("io.quarkus:quarkus-rest-client-reactive-jackson")

    implementation("io.quarkus:quarkus-hibernate-orm-panache")
    implementation("io.quarkus:quarkus-jdbc-postgresql")

    testImplementation("io.quarkus:quarkus-junit5")
    testImplementation("io.rest-assured:rest-assured")

}

解决方案

1. 显式添加Woodstox依赖

错误提示缺失的com.ctc.wstx.stax.WstxInputFactory属于Woodstox库,这是Narayana JTA扩展的依赖但未被自动引入。直接在dependencies块中添加:

implementation("com.fasterxml.woodstox:woodstox-core")

2. 排查依赖冲突

执行Gradle命令分析依赖树,查看是否有依赖排除了Woodstox:

./gradlew dependencies --configuration compileClasspath

在输出中查找woodstox-core相关条目,若发现被某个依赖排除,在对应依赖上调整排除规则,确保Woodstox被正确引入。

3. 升级Quarkus版本

Quarkus 3.1.2.Final可能存在该依赖缺失的已知问题,尝试升级到更高的稳定版本(如3.2.x或3.3.x系列),新版本通常会修复这类依赖引入问题。

内容的提问来源于stack exchange,提问作者Barrufet

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 10:32:29