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

Netflix DGS代码生成插件仅生成Schema类型未生成查询API问题咨询

问题原因

Netflix DGS代码生成插件不会仅根据Schema文件自动生成全量查询API,generateClient=true配置的作用是基于你自定义的GraphQL查询文件生成对应的客户端调用封装类,你当前缺少自定义查询文件,所以只会生成Schema对应的类型类,不属于框架本身缺陷。

解决步骤

  • 第一步:创建查询文件存储目录
    默认情况下插件会读取src/main/resources/graphql-client目录下后缀为.graphql的查询文件,你需要先手动创建该目录。
  • 第二步:编写自定义GraphQL查询
    在上述目录中新建查询文件,比如swapi-queries.graphql,写入你实际需要调用的查询,示例如下:
    query getPerson($personId: ID!) {
      person(id: $personId) {
        name
        birthYear
        gender
        homeworld {
          name
        }
      }
    }
    
    query listAllFilms {
      allFilms {
        films {
          title
          releaseDate
          director
        }
      }
    }
    
  • 第三步:补充完善generateJava配置(可选但推荐)
    你可以在build.gradle的generateJava块中指定生成代码的包名,避免默认包名混乱:
    generateJava {
        generateClient = true
        generateDataTypes = true
        // 生成类型类的包名
        packageName = "com.clients.netflix.generated.types"
        // 生成客户端API的包名
        clientPackageName = "com.clients.netflix.generated.client"
    }
    
  • 第四步:重新执行代码生成任务
    运行Gradle命令./gradlew generateJava,即可在build/generated/sources/dgs-codegen目录下看到生成的对应查询请求类、响应结果类,以及可直接注入使用的DGS客户端调用封装方法。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 06:45:04