[EXPO] eas 빌드 실패 "This validation is only available on Node 16+ / npm 8."

Eunji Jung·2024년 6월 6일
0

Expo(react-native)

목록 보기
3/4

문제 상황

This validation is only available on Node 16+ / npm 8.

빌드는 성공했는데 expo doctor에서 failed가 뜨는 상황이다.
원인은 node.js의 버전이 16 이상, npm이 8 이상이어야 한다고 한다.

그런데 나는 현재 node 20 버전을 사용 중이었고, node_modules를 삭제한 후 다시 설치해도 문제가 발생했다. 이런 경우 우선 모든 것을 초기화 한 후 다시 테스트를 해주는 것이 좋다.
결국 아래 명령어를 이용하여 문제를 해결했다!

해결 방법

  1. node_modules 폴더 삭제
  2. package-lock.json 파일 삭제
  3. npm 캐시 삭제
  4. npm install
  5. 다시 빌드
rm -rf node_modules package-lock.json
npm cache clean --force
npm install

만약 에뮬레이터에 로그인 기록이 있다면, 에뮬레이터도 데이터를 삭제하고 다시 실행한다.
  1. Device Manager 클릭
  2. 사용 중인 에뮬레이터의 설정(...) 클릭
  3. Wipe Data 옵션 클릭
  4. Confirm Data Wipe 질문에 대하여 Yes(삭제) 클릭
    완료!

마무리

원래 ios의 watchman 문제가 발생해서 doctor가 실행이 안 되고 있는 상황이었는데, 어느순간 되어서 이후부터는 doctor로 먼저 확인 한 후 배포하게 되었다.

꼭.. doctor로 확인하자.. doctor로 확인하면 반은 간다!! 단, doctor에서 잘 되었다고 해도 버전 충돌이 해결되는 것은 아니니 조심하자.

0개의 댓글