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

使用Quarkus 3.1.0.Final与openapi-generator 2.2.5报NoSuchFileException

解决Quarkus OpenAPI Generator Gradle下的NoSuchFileException错误

当使用io.quarkiverse.openapi.generator:quarkus-openapi-generator:2.2.5搭配Quarkus 3.1.0.Final时,应用虽能正常启动,但日志中会抛出java.nio.file.NoSuchFileException(目标路径为PROJECT_LOCATION\build\classes\java\openapi),这是因为Quarkus的文件监听工具尝试检查一个不存在的openapi编译目录。

对应Maven的<extensions>true</extensions>配置,Gradle的解决方案如下:

Gradle Groovy DSL配置

在build.gradle中添加:

quarkus {
    openApiGenerator {
        extensions = true
    }
}

Gradle Kotlin DSL配置

在build.gradle.kts中添加:

quarkus {
    openApiGenerator {
        extensions.set(true)
    }
}

原理说明

开启extensions配置后,OpenAPI Generator会将生成的代码目录自动注册为Gradle的源码集目录,Quarkus部署流程会正确识别该目录,避免尝试访问未生成的编译目录。

备选方案(若上述配置不生效)

手动将生成的openapi代码目录添加到源码集:

  • Groovy DSL:
sourceSets {
    main {
        java {
            srcDirs += "${buildDir}/generated/openapi"
        }
    }
}
  • Kotlin DSL:
sourceSets {
    main {
        java {
            srcDirs("${buildDir}/generated/openapi")
        }
    }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 12:42:22