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

Spring Boot中swagger-ui.html页面突然无法访问求助

排查Spring Boot中Swagger UI突然无法访问的问题

嘿,我来帮你定位这个Swagger UI突然挂掉的问题!你提到新增了一个Wildfly 10的Application Startup类后,哪怕切换回Tomcat运行也无法正常打开/swagger-ui.html,只能看到部分内容,那大概率是这个新增类干扰了Spring Boot的上下文或Swagger的自动配置逻辑,咱们一步步来排查:

  • 检查Startup类的注解与逻辑
    看看你写的Startup类是不是用了@Singleton、@Startup这类Java EE容器的注解?哪怕在Tomcat环境下,这些注解可能会打乱Spring Boot的Bean初始化顺序,导致Swagger的核心配置Bean(比如SwaggerUiWebMvcConfiguration)无法正常加载。另外,留意这个类里有没有修改ServletContext的操作(比如设置属性、修改资源映射),这类操作可能会覆盖Swagger默认的路径映射规则。

  • 确认Swagger自动配置是否正常生效
    检查你的Spring Boot启动类上有没有@EnableAutoConfiguration(exclude = ...)或@SpringBootApplication(exclude = ...),看看是不是无意中把Swagger的自动配置类(比如SpringfoxSwaggerUiAutoConfiguration)给排除了。同时,在应用启动日志里搜索“Swagger”或“springfox”关键字,查看是否有类似“AutoConfiguration excluded”或“Bean not initialized”的日志,确认Swagger的Bean是否正常初始化。

  • 排查静态资源映射问题
    你提到只能打开部分内容,很可能是Swagger UI的静态资源(JS、CSS、HTML文件)没有被正确映射。Spring Boot默认会映射classpath:/META-INF/resources/下的静态资源,而Swagger UI的资源就存放在这里:

    • 如果你的Startup类实现了WebMvcConfigurer并重写了addResourceHandlers方法,一定要确保添加了Swagger的资源映射规则:
      @Override
      public void addResourceHandlers(ResourceHandlerRegistry registry) {
          registry.addResourceHandler("/swagger-ui/**")
                  .addResourceLocations("classpath:/META-INF/resources/webjars/springfox-swagger-ui/");
          registry.addResourceHandler("/swagger-ui.html")
                  .addResourceLocations("classpath:/META-INF/resources/");
      }
      
    • 如果你使用的是Spring Boot 2.6及以上版本,还要注意路径匹配策略的问题:Spring Boot 2.6默认使用pathpattern,但Springfox暂未适配,需要在application.properties中添加配置:spring.mvc.pathmatch.matching-strategy=ant_path_matcher。
  • 检查依赖版本冲突
    虽然你说没有移除依赖,但新增的Startup类如果引入了Wildfly相关的API依赖,可能会导致Servlet或Spring相关依赖的版本冲突。可以用以下命令排查依赖树:

    • Maven:mvn dependency:tree
    • Gradle:./gradlew dependencies
      重点关注Servlet API、Spring Context等核心依赖的版本是否一致。
  • 临时验证Startup类的影响
    最直接的测试方法是把新增的Application Startup类注释掉,然后重启应用。如果Swagger UI恢复正常,那问题肯定出在这个类里,再逐步拆解它的逻辑,定位具体影响的代码块。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 11:52:49