노는게 제일 좋습니다.

npm 6.x.x -> 7.x.x 업데이트 이후 node 실행시 chokidar dependency 오류 본문

npm 6.x.x -> 7.x.x 업데이트 이후 node 실행시 chokidar dependency 오류

노는게 제일 좋습니다. 2021. 4. 11. 18:50

상황

/home/wonjinyi/Desktop/NyamNyamLab/test/node_modules/watchpack/lib/chokidar.js:17
throw new Error(
^

Error: No version of chokidar is available. Tried chokidar@2 and chokidar@3.
You could try to manually install any chokidar version.
chokidar@3: Error: Cannot find module 'chokidar'
Require stack:
- /home/wonjinyi/Desktop/NyamNyamLab/test/node_modules/watchpack/lib/chokidar.js
- /home/wonjinyi/Desktop/NyamNyamLab/test/node_modules/watchpack/lib/DirectoryWatcher.js
- /home/wonjinyi/Desktop/NyamNyamLab/test/node_modules/watchpack/lib/watcherManager.js
- /home/wonjinyi/Desktop/NyamNyamLab/test/node_modules/watchpack/lib/watchpack.js
- /home/wonjinyi/Desktop/NyamNyamLab/test/node_modules/webpack/lib/node/NodeWatchFileSystem.js
- /home/wonjinyi/Desktop/NyamNyamLab/test/node_modules/webpack/lib/node/NodeEnvironmentPlugin.js
- /home/wonjinyi/Desktop/NyamNyamLab/test/node_modules/webpack/lib/webpack.js
- /home/wonjinyi/Desktop/NyamNyamLab/test/node_modules/react-scripts/scripts/start.js
chokidar@2: Error: Cannot find module 'watchpack-chokidar2'
Require stack:
- /home/wonjinyi/Desktop/NyamNyamLab/test/node_modules/watchpack/lib/chokidar.js
- /home/wonjinyi/Desktop/NyamNyamLab/test/node_modules/watchpack/lib/DirectoryWatcher.js
- /home/wonjinyi/Desktop/NyamNyamLab/test/node_modules/watchpack/lib/watcherManager.js
- /home/wonjinyi/Desktop/NyamNyamLab/test/node_modules/watchpack/lib/watchpack.js
- /home/wonjinyi/Desktop/NyamNyamLab/test/node_modules/webpack/lib/node/NodeWatchFileSystem.js
- /home/wonjinyi/Desktop/NyamNyamLab/test/node_modules/webpack/lib/node/NodeEnvironmentPlugin.js
- /home/wonjinyi/Desktop/NyamNyamLab/test/node_modules/webpack/lib/webpack.js
- /home/wonjinyi/Desktop/NyamNyamLab/test/node_modules/react-scripts/scripts/start.js

    at Object.<anonymous> (/home/wonjinyi/Desktop/NyamNyamLab/test/node_modules/watchpack/lib/chokidar.js:17:7)

레포지토리를 클론떠서 새로 패키지를 설치하는김에 npm도 업데이트 해주었다

기존의 npm 버전은 6.x.x 이고, 업데이트 이후 npm 버전은 7.9.0이다.

문제가 생긴 프로젝트는 npx crate-react-app [xx]로 생성한 CRA템플릿이다.

 

원인

chokidar는 watchpack안쪽에 있는 모듈로, 핫 리로딩에 관련되어있다.

기존에 설치되어 있던 chokidar 2에 문제가 있어 개발자측에서 chokidar 3으로 버전을 올려놓았었다.

그냥 chokidar 깔아주면 된다.

 

해결

npm i -g npm
npm update
npm cache verify
npm i -D chokidar
npm i

같은걸 두 번씩 하는 과도한 명령이긴 한데, 아무튼 된다.

cache verify는 아무런 피드백도 없이 시간이 많이 소요된다. 본인의 경우 7분 걸렸다.

이유는 모르겠지만 chokidar 2가 있는 디렉토리 안에서 chokidar를 설치하면 에러가 난다. 디렉토리 바깥해서 해주면 잘 된다.

 

Comments