Node.js => UnhandledPromiseRejectionWarning: Error

KHW·2021년 7월 16일
0

에러모음

목록 보기
1/10

문제발생상황

npm init 이후
npm install nodemon --save-dev로 nodemon을 다운받고
npm install express 를 통해 express모듈을 다운받고
package.json의 "start" : "nodemon app.js"를 추가하고
npm start 명령어에 의해 nodemon app.js가 실행되면서
express 관련 코드를 수정하고 nodemon을 진행하니 오류가 나타났다.

UnhandledPromiseRejectionWarning: Error

  • 구체적 내용

(node:15036) UnhandledPromiseRejectionWarning: Error: Command failed: wmic process where (ParentProcessId=6444) get ProcessId 2> nul at checkExecSyncError (child_process.js:611:11) at execSync (child_process.js:647:15) at kill (C:\Users\82103\job것들\Desktop\DreamCoding\server\node_modules\nodemon\lib\monitor\run.js:345:26) at Function.run.kill (C:\Users\82103\job것들\Desktop\DreamCoding\server\node_modules\nodemon\lib\monitor\run.js:437:7) at Bus.<anonymous> (C:\Users\82103\job것들\Desktop\DreamCoding\server\node_modules\nodemon\lib\monitor\run.js:507:7) at Bus.emit (events.js:327:22) at restartBus (C:\Users\82103\job것들\Desktop\DreamCoding\server\node_modules\nodemon\lib\monitor\watch.js:228:7) at FSWatcher.filterAndRestart (C:\Users\82103\job것들\Desktop\DreamCoding\server\node_modules\nodemon\lib\monitor\watch.js:212:16) at FSWatcher.emit (events.js:315:20) at FSWatcher.emitWithAll (C:\Users\82103\job것들\Desktop\DreamCoding\server\node_modules\chokidar\index.js:540:8) (Use node --trace-warnings ...to show where the warning was created) (node:15036) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was n ot handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag--unhandled-rejections=strict(see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1) (node:15036) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

구글링

구글링을 해보았지만 해외 관련 github에서 그나마 몇몇 내용이 있었으나 다 효과가 없었다.

해결 방안

다른 결과 모듈의 버전을 보며 확인해보니
나의 경우 nodemon이 2.0.12이고
다른 문제가 없는 경우는 nodemon이 2.0.7이었다.

현재 nodemon은 node.js에서 최근의 버전이 6일전이었다. 위의 내용과 추측을 통해
너무 최근꺼라 역시 해당 노트북이 동작하는데 어떤 문제가 발생 한 것이지 않을까 생각도 했다.

처리 하기

npm install nodemon@2.0.7 --save-dev명령어를 사용하였고
이를 통해 진행하니 수정 후 진행을 바로 해도 문제가 없었다.

문제발생 사진

nodemon 2.0.12로 파일을 restarting due to changes를 진행하면 오류가 발생한다.

문제해결 사진

nodemon 2.0.7로 파일을 restarting due to changes를 진행하면 오류가 발생하지않는다.

느낀점

이런 간단한 2.0.12와 2.0.7에서도 문제가 크게 발생하는데
협업자와의 패키지 버전 문제가 발생하면 얼마나 더 힘들까 생각한다.
즉, 그와 관련한 자신이 설치한 모듈 패키지를 확인하는 역할인 package.json과 package.json과 node_modules의 변화를 기록하는 package.lock.json이 협업자간 같아야하는것이 중요하다는 것을 느꼈다.

profile
나의 하루를 가능한 기억하고 즐기고 후회하지말자

1개의 댓글

comment-user-thumbnail
2021년 8월 19일

저도 같은 문제였는데, 아무리 구글링해도 답이 잘 안 나와서 고생했습니다. 덕분에 해답 찾고 갑니다!! 감사합니다~!

답글 달기