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

升级Spring Boot与GraphQL后@connection指令失效,启动报错

解决Spring Boot 3.0.5 + graphql-spring-boot-starter 15.0.0中@connection指令失效问题

升级到Spring Boot 3.0.5及graphql-spring-boot-starter 15.0.0后出现InvalidSchemaException: A definition for directive 'connection' could not be found异常,根源是新版本中RelayConnectionFactory不再默认自动注册,导致@connection指令无法被识别。

解决步骤:

  1. 手动注册RelayConnectionFactory Bean
    创建Spring配置类,显式声明RelayConnectionFactory的Bean,让框架识别@connection指令:
import graphql.kickstart.tools.RelayConnectionFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class GraphQLRelayConfiguration {

    @Bean
    public RelayConnectionFactory relayConnectionFactory() {
        return new RelayConnectionFactory();
    }
}
  1. 确认Relay配置启用
    检查项目的配置文件,确保Relay相关配置未被禁用:
# application.properties
graphql.tools.relay.enabled=true
# application.yaml
graphql:
  tools:
    relay:
      enabled: true
  1. 验证依赖完整性
    确保graphql-spring-boot-starter依赖已正确引入,版本为15.0.0,该starter已包含graphql-java-tools等必要组件,无需额外引入。

完成以上配置后,重启应用,@connection指令即可被正常识别,schema验证通过。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 22:02:21