일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- SVG
- 프로그래머스 lv0
- 코딩테스트 js
- 패스트캠퍼스
- javascript
- DOM
- flex item
- flex
- react강의
- CSS
- 국비지원
- udemy
- 리액트
- js split
- React
- 프로그래머스 JS
- 노드
- margin-left
- 나라사랑카드
- html
- js
- 내일배움카드
- 바이트디그리
- 호이스팅
- API
- 자바스크립트
- Flex Container
- K디지털기초역량훈련
- 코딩테스트 lv0
- 변수 선언
- Today
- Total
꺾이지 않는 마음
[Node.js] Error: Cannot find module 문제 해결하기 본문
오늘 Node.js 강의를 듣기 시작했는데 처음부터 큰 문제에 봉착했다.
터미널에서 node.js로 자바스크립트 코드를 출력하려는데 오류가 뜨는 것이다.
상황은 다음과 같다.
1. app.js 파일을 생성
2. 변수 값을 출력하는 간단한 코드 작성
3. 터미널에서 node app.js 명령어 입력
4. Error: Cannot find module 어쩌고 문제 발생..
듣던 강의에서는 이 문제에 관한 내용이 없었다.
안그래도 node.js를 처음 다뤄봐서 낯선데 설치하자마자 쓴 첫 명령어부터 오류라니..
해결하기 위해 개발자의 기본인 구글링부터 해보았다.
node.js를 오늘 처음 설치해본 나로서는 수많은 글들을 읽어도 해결이 되지 않았다.
그래도 끝까지 포기하지 않고 글들을 모아서 요약했고,
대학교 커뮤니티인 에브리타임 앱에 질문 글을 올리기도 하였다.
그 결과 해결의 실마리를 얻게 되었다.
문제는 보통 3가지 경우에서 발생한다.
1. node.js 문제 => 삭제하고 재설치해라
2. 스펠링 문제 => 입력한 명령어 스펠링이 틀린 건 아닌지 확인해봐라
3. 경로 문제 => 디텍토리 경로가 잘못되었으니 경로 이동을 해라
본 3가지를 생각하면서 계속해서 폴더와 터미널들을 헤집어 다니다가 경로가 잘못되었음을 인지했다..(세상에 이렇게 간단할 수가)
맨 윗줄을 보면 나는 현재 udemy_2022-Web-Bootcamp 폴더에 있다.
그리고 이 폴더에서 app.js 파일을 node 명령어를 통해 실행하려 했다.
하지만 udemy_2022-Web-Bootcamp 폴더와 app.js 파일 사이에는 9. node.js라는 폴더가 존재한다..
즉, 현재 경로를 9. node.js 폴더로 이동한 다음 node app.js 명령어를 실행해야 제대로 작동하는 것이다..
상위 폴더를 건너뛰고 바로 app.js 를 실행하려 했으니 해당 모듈을 찾을 수 없다고 하지.. 나는 바보다.
근데 이 간단한 걸 왜 눈치 못챘을까 생각해 보니,
나는 VSCode를 통해 해당 파일에서 작업을 하다 터미널을 켰으니 당연히 경로가 해당 폴더로 되어있을 줄 알았다.
맥 OS 자체에서 터미널을 켜서 명령을 실행했으면 내가 당연히 9. node.js 폴더까지 거쳐서 app.js 까지 이동했겠지..
근데 워낙 VSCode로 터미널을 사용하는 경우가 많다 보니 평소에 경로 이동을 잘 쓰질 않아서 눈치를 못챘다.
오늘 나는 VSCode를 통해 터미널을 실행할 때는 작업하고 있는 폴더 중 최상위 폴더로 디텍토리 경로가 설정된다는 점과,
node.js를 사용하다 Cannot find module 오류가 발생하면 디텍토리 경로를 유심히 살펴봐야 한다는 깨달음을 얻었다.
이렇게 또 한번 성장의 계기를 얻었다.