BackEnd/Node.js

[Node.js] npm version warning

푸고배 2022. 9. 18. 14:10

Warning 메세지

npm WARN read-shrinkwrap This version of npm is compatible with lockfileVersion@1, but package-lock.json was generated for lockfileVersion@2. I'll try to do my best with it!

 

원인

npm 7 미만의 환경에서 npm 7 이상에서 만들어진 package-lock.json 파일 기반으로 패키지 다운받으려 할 때 발생하는 경고 메시지이다. npm 7 부터는 package-lock.json의 버전이 2로 바뀌었기 때문이다.

 

package-lock.json이란?

npm을 사용해서 node_modules 트리나 package.json 파일을 수정하게 되면 자동으로 생성되는 파일이다.

파일이 생성되는 시점의 의존성 트리에 대한 정확한 정보를 가지고 있다. package-lock.json이 존재하는 경우 npm install의 동작이 조금 달라진다.  npm install 시 더 이상 package.json을 계산하지 않고, package-lock.json에 명시된 의존 패키지들을 통해 node_modules를 만들어낸다.

 

해결 방법

npm 버전을 7이상으로 맞춰주거나, package-lock.json 파일을 삭제 후 재설치(의존성 유지를을 위해 비추천) 한다.


Reference

 

Is there any way to fix package-lock.json lockfileVersion so npm uses a specific format?

If two different developers are using different versions of node (12/15) & npm (6/7) in a project that was originally created using a package-lock.json "lockfileVersion": 1, when the

stackoverflow.com

 

 

[경고] The package-lock.json file was created with an old version of npm,

문제 git clone으로 프로젝트를 다운받고 npm i 하였는데, 다음과 같은 현상이 발생함. npm run start 하기에는 지장 없음. package-lock.json 파일이 낮은 버전의 npm으로 만들어졌다는 경고가 뜸. package-lock.js

velog.io

 

반응형