티스토리 뷰

$ sh apigen.sh
  ✔ src/gql/index.ts was generated.
    Error: Cannot find module 'graphql/validation/rules/KnownArgumentNamesRule'
    Require stack:
    - /opt/homebrew/lib/node_modules/apollo/node_modules/@apollo/federation/dist/composition/validate/preNormalization/tagDirective.js
    - /opt/homebrew/lib/node_modules/apollo/node_modules/@apollo/federation/dist/composition/validate/preNormalization/index.js
    - /opt/homebrew/lib/node_modules/apollo/node_modules/@apollo/federation/dist/composition/validate/index.js
    - /opt/homebrew/lib/node_modules/apollo/node_modules/@apollo/federation/dist/composition/composeAndValidate.js
    - /opt/homebrew/lib/node_modules/apollo/node_modules/@apollo/federation/dist/composition/index.js
    - /opt/homebrew/lib/node_modules/apollo/node_modules/@apollo/federation/dist/index.js
    - /opt/homebrew/lib/node_modules/apollo/node_modules/apollo-language-server/lib/providers/schema/file.js
    - /opt/homebrew/lib/node_modules/apollo/node_modules/apollo-language-server/lib/providers/schema/index.js
    - /opt/homebrew/lib/node_modules/apollo/node_modules/apollo-language-server/lib/project/base.js
    - /opt/homebrew/lib/node_modules/apollo/node_modules/apollo-language-server/lib/index.js
    - /opt/homebrew/lib/node_modules/apollo/lib/commands/client/codegen.js
    - /opt/homebrew/lib/node_modules/apollo/node_modules/@oclif/config/lib/plugin.js
    - /opt/homebrew/lib/node_modules/apollo/node_modules/@oclif/config/lib/config.js
    - /opt/homebrew/lib/node_modules/apollo/node_modules/@oclif/config/lib/index.js
    - /opt/homebrew/lib/node_modules/apollo/node_modules/@oclif/command/lib/command.js
    - /opt/homebrew/lib/node_modules/apollo/node_modules/@oclif/command/lib/index.js
    - /opt/homebrew/lib/node_modules/apollo/bin/run
    Code: MODULE_NOT_FOUND
  ✔ src/gql/bff_types.ts was generated.

해당 이슈는 노드 패키지 매니저의 글로벌에 패키지를 설치하면서 발생하였습니다.

에러의 내용을 보면 알 수 있듯이 설치과정에서 graphql의 버전이 기존과 달라져 모듈을 읽을 수 없게 되어 발생한 문제입니다.

 

기존에 사용중인 그래프큐엘 버전으로 삭제 후 재 설치하는 것으로 해결을 할 수 있었는데, 혹시나 이 방법으로도 해결이 안된다면 apollo을 설치해서 시도해보면 해결이 될 수 있습니다.

 

그래프큐엘도 버전이 바뀌면서 이슈가 있는듯하여 여러곳을 서치해본 결과 많은 사람들이 추천하는 15.7.2 버전을 사용하는 것으로 수정하였습니다.

 

후기)

새롭게 알게 된 사실은 스크립트 방식의 제네레이터를 사용하고 있는데 해당 문제가 현재 사용중인 node 버전이 높아 발생하는 문제라는 것입니다. nvmrc 등을 이용하여, 프로젝트별로 node버전이 변경되지 않도록 설정하는 것으로 이 문제를 방지할 수 있습니다.

 

저희의 경우는 이후 https://the-guild.dev/graphql/codegen 코드제네레이터로 변경하고 node 버전을 올려 이 문제에서 완전히 벗어날 수 있었습니다.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함