vitest error (feat.node, nvm)

정태수·2025년 3월 31일

거의 이틀을 날렸다.

문제 해결은 vscode 재설치 + node path 및 버전이었다.

vitest를 사용하려고 확장깔아서 쓰려고보니까

rpc error.. node문제인가 싶었다. 지금 생각해보면 저때 문제가 되는 node 버전을 지웠으면 달랐을까 싶다.

  1. rpc error는 구글링해도 관련 글도 없고 그저 node_module을 지워보고 하는것 말고는 도저히 방법을 모르겠어서 .. 망설였다. vscode를 재설치해야하는데 부담스럽기도 하고... 하지만 고치기로 마음먹고 과감히 vscode를 지웠다.
[INFO 오후 4:18:35] [Worker] failed to load config from /Users/taesujung/Desktop/fe5/front_5th_chapter1-2/vite.config.js
[Error 오후 4:18:35] [Error Error] Vitest failed to start: 
file:///Users/taesujung/Desktop/fe5/front_5th_chapter1-2/node_modules/.pnpm/vite@6.2.3_yaml@2.7.0/node_modules/vite/dist/node/chunks/dep-DDxXL6bt.js:4
import fsp, { constants as constants$9 } from 'node:fs/promises';
              ^^^^^^^^^
SyntaxError: The requested module 'node:fs/promises' does not provide an export named 'constants'
  1. 에러내용이 바뀌었다. 이 에러는 노드 옛 버전을 사용해서 안된다는 내용을 알수 있었다.
    즉 nvm 으로 노드버전을 최신으로 바꿔쓰고 있었는데 뭔가 이슈가 있다는 것을 알수 있음.

  1. nvm use / nvm install... 등등 해봤는데도 안된다. 이유가 뭘까.
    nvm 에서 default로 쓰고있던 17.5.0 버전을 지워버리기로 했다. active 된건 22.14.0이 맞지만 gpt의 충고를 듣기로 했다. 잘가 17.5.0...

  2. 확실히 지우는게 굉장히 깔끔하다
    where node , which node 할때도 이제 쓰는 버전만 나오게 된다.

[Error 오후 5:28:29] [Error Error] spawn node ENOENT
Error: spawn node ENOENT
  1. 이번엔 이런 이슈가,,, 점점 가닥이 잡히기 시작했다. 노드가 아예 실행되지 않았다는 뜻이었고 결국 17.5.0를 참조하고 있었단걸 확정할수 있었다.
    나는 nvm으로 죽어라 바꿨지만 vscode는 쌩까고있었...

  2. 핵심은 여기였다.
    /Users/taesujung/.expo/state.json

솔직히 잘 기억도 안난다 이게 뭐였는지 근데 까고보니까 여기다가 노드버전들은 죄다 적어놓은 것이었다..
expo는 react-native 실행시키기위한 cli인데 저거하다가 뭔가 고쳤던것 같다.
이게 돌고돌아 문제로 오다니...참 ㅎㅎ

너무 감격스럽다. error만 몇일동안 빡치게 쳐 던져주던 니가 날 위해 테스트를 해주다니

교훈

  1. 아직도 rpc error는 vscode 재설치말고는 답을 모르겠다. 사실 삭제를 망설이면 안되긴하는데 아무래도 1년넘게 작업했던 vscode라 망설였던것 같다...
  2. 역시 nvm 은 잘되는 프로젝트에선 한없이 잘되고 안되는 곳에서 한없이 안된다. nvm에서 잘뜬다고 해도 행여나 내가 쓰고자 하는 버전이 잘뜬다고 해도 그 밑에 다른 버전이 보인다면 과감히 지워라. (문제가 있다면)

오랜만에 node로 고생해본 경험을 적었습니다! ㅎㅎ

profile
프론트엔드 개발자

0개의 댓글