npm install 라이브러리명 --save
을 하면서 설치하고 있는데 요즘 에러가 자주뜬다. 😠
원인
원인은 2021년 2월 출시된 npm 7버전부터 추가된 peerDependencies를 자동으로 설치하는 기능 때문이다. peerDependencies를 자동으로 설치할 때, 이미 설치되어 있는 의존성(direct dependencies of the root project)과 동일하지만 버전이 다른 peerDependencies가 존재하면 충돌이 일어나서 위와 같은 에러가 나게 된다.
[출처] https://tesseractjh.tistory.com/234
해결
$ npm install 라이브러리명 --legacy-peer-deps
$ npm install 라이브러리명 --force
해결하려면 npm install
모듈명 명령어 뒤에 --legacy-peer-deps
또는 --force
를 추가해주면 된다. --legacy-peer-deps
는 npm 4 ~ 6버전 때처럼 peerDependencies
를 자동으로 설치하지 않도록 설정하는 것이고, --force
는 충돌이 일어난 peerDependecies
를 강제로 설치하도록 설정하는 것이다.
둘 중 어떤 것을 택해야 하는지는 의견이 분분한 것 같다.
결과
$ npm install 라이브러리명 --force
를 사용하여 install을 하니 설치된다.