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

升级至OpenAPI编译失败:GroupedOpenApi.builder符号找不到

解决Java 21升级后SpringDoc编译错误:找不到GroupedOpenApi.builder类

问题原因

  1. API变更:新版springdoc-openapi中,GroupedOpenApi的构造方式已从实例builder()改为静态工厂方法,旧代码里的new GroupedOpenApi.builder()写法不再有效。
  2. 代码遗漏:你的api()方法没有返回创建好的GroupedOpenApi对象,这也会导致编译问题。
  3. 版本兼容:Java 21需要搭配Spring Boot 3.2及以上版本,需确保springdoc与Spring Boot版本匹配。

修复步骤

1. 修正SwaggerConfig代码

把实例化GroupedOpenApi的代码改成静态方法调用,并补上return语句:

import org.springdoc.core.models.GroupedOpenApi;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class SwaggerConfig {

    @Bean
    public GroupedOpenApi api() {
        // 去掉new,直接调用静态builder方法
        return GroupedOpenApi.builder()
                .pathsToMatch("/path/**")
                .build();
    }
}

2. 确保Spring Boot与springdoc版本兼容

Java 21要求Spring Boot版本至少为3.2.x,建议在pom.xml中添加Spring Boot父依赖来统一管理版本:

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>3.2.5</version> <!-- 适配Java 21的稳定版本 -->
    <relativePath/>
</parent>

2.6.0版本的springdoc-openapi-starter-webmvc-ui已适配Spring Boot 3.x,无需改动现有springdoc依赖;若后续仍有兼容问题,可升级至2.7.0等匹配版本。

3. 验证修复

执行mvn clean compile重新编译项目,错误即可消除。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 10:25:12