node.js와 npm 버전 오류 해결방법(node version 바꾸는 법)
npm ERR! code EBADENGINE
npm ERR! engine Unsupported engine
npm ERR! engine Not compatible with your version of node/npm: javascript-baseball@1.0.0
npm ERR! notsup Not compatible with your version of node/npm: javascript-baseball@1.0.0
npm ERR! notsup Required: {"npm":">=9.6.7","node":">=18.17.1"}
npm ERR! notsup Actual: {"npm":"9.5.1","node":"v18.16.0"}
문제 원인
npm install 중 위 내용의 에러가 발생했다.
현재 사용 중인 node.js와 npm의 버전이 프로젝트가 필요로 하는 버전보다 낮기 때문에 발생한 현상이다.
이 프로젝트는 node.js 버전 18.17.1 이상과 npm 버전 9.6.7 이상을 필요로 하고 있는데 현재 시스템에서는 node.js 버전 18.16.0과 npm 버전 9.5.1을 사용하고 있었다.
해결 방법 1
node -v
sudo npm install -g n
n 패키지 설치를 마쳤고 v9.2.0 이 설치된 것을 확인(23.10.19일자 기준)
sudo n 18.17.1
n stable : 안정 버전
n latest : 최신 버전
n lts : lts 버전
n x.x.x : 특정 x.x.x 버전
n ls : 설치된 node 버전들 보기
n rm <version> : 특정 버전 삭제
해결 방법 2
package.json 파일 내부의 engines 섹션에서 요구되는 node와 npm의 버전을 현재 시스템의 버전으로 수정해준다.
"engines": {
"node": ">=18.16",
"npm": ">=9"
}
결론
node 버전을 바꾸는 것은 여러가지 방법이 있는데 각자 환경과 상황에 따라 적합한 방법을 선택하여 사용하면 된다.