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

Quarkus生产环境中Swagger UI缺失问题求助

Quarkus生产环境Swagger UI无法构建问题解决

问题背景

根据Quarkus官方文档,需在application.properties中配置quarkus.swagger-ui.always-include=true,才能让Swagger UI随生产环境应用一同构建(默认仅dev/test模式下可用)。但配置该属性后,生产环境仍未加载Swagger UI。

现象

  • 开发环境:执行mvn clean compile quarkus:dev启动,日志显示swagger-ui特性已安装;
  • 生产环境:执行mvn clean package; java -jar target/quarkus-app/quarkus-run.jar启动,日志中无swagger-ui特性相关记录。

当前配置

application.properties内容:

# Set up for the swagger-ui (Process-defintions)
quarkus.smallrye-openapi.path=/api
quarkus.swagger-ui.always-include=true
quarkus.swagger-ui.path=/swagger

问题原因及解决方案

查看项目pom.xml中的quarkus-swagger-ui依赖,发现其被设置为<scope>test</scope>,这会导致该依赖仅在测试环境生效,生产打包时不会被包含进构建产物,因此即便配置了always-include=true也无法生效。

修改方式:移除该依赖的test scope,让其在所有环境生效:

<dependency>
    <groupId>io.quarkus</groupId>
    <artifactId>quarkus-swagger-ui</artifactId>
</dependency>

修改后重新执行mvn clean package打包,启动生产环境应用即可看到swagger-ui特性加载,访问配置的/swagger路径即可打开Swagger UI界面。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 08:48:11