npm(Node Package Manager)이란 무엇인가
npm은 다른 사람들이 만든 소스 코드들을 모아둔 저장소로, 다른 사람이 만들어놓은 기능을 사용할 수 있기 때문에 다시 구현할 필요가 없어서 효율적이다.
npm에 업로드된 노드 모듈을 패키지라고 하며, 패키지가 다른 패키지를 사용할 수 있는 ‘의존 관계’를 이루고 있다.
package.json
현재 프로젝트에 대한 정보와 사용 중인 패키지에 대한 정보를 담은 파일이다.
'npm init'을 하면 폴더에 package.json 파일이 자동 생성된다.
- package name: 패키지 이름, package.json의 name 속성에 저장됨
- version: 패키지 버전
- entry point: 자바스크립트 실행 파일 진입점, package.json의 main속성에 저장됨
- test command: 코드를 테스트할 때 입력할 명령어, package.json scripts 속성 안의 test 속성에 저장됨
- git repository: 코드를 저장해 둔저장소 주소, package.json의 repository 속성에 저장됨
- keywords: npm 공식 홈페이지에서 패키지를 쉽게 찾을 수 있게 해 줌,의 keywords 속성에 저장됨
- license: 해당 패키지의 라이선스
scripts 부분은 npm 명령어를 저장하는 부분이다.
“echo \"Error: no test specified\" && exit 1”
콘솔에 해당 문자열을 출력하고, 빠져나가라(에러와 함께 종료하라)
npm run [script명]으로 스크립트를 실행하면, 스크립트 내의 내용이 출력된다.
패키지 설치하기
1) Express 패키지 설치하기
‘npm install 패키지명’으로 패키지를 설치할 수 있다.
package-lock.json 파일도 새로 생성되어, 패키지 간 의존관계를 명확히 확인할 수 있다.
또한, npm install 하면 node_modules 폴더가 생성된다.
이 폴더에는 내가 설치한 express 패키지가 들어있고, Express 하나만 설치했지만, express와 의존관계가 있는 패키지들이 모두 들어있다.
2) 여러 개 패키지 동시에 설치하기
‘npm install 패키지1 패키지2 패키지3’처럼 여러 패키지를 동시에 설치할 수도 있다.
3) 개발용 패키지 설치하기
npm install --save-dev [패키지명] 또는 npm i -D [패키지명]
4) 글로벌(전역) 패키지 설치하기
‘npm install –global 패키지명’ 또는 ‘npm I -g 패키지명’
rimraf는 폴더를 지우는 패키지로, node_modules 폴더가 사라진 것을 확인할 수 있다.
노드 패키지 버전
노드 패키지 버전은 Major(주버전), Minor(부버전), Patch(수버전)이 있다.
- Major(주버전): 하위 버전과 호환되지 않은 수정 사항이 생겼을 때 올림
- Minor(부버전): 하위버전과 호환되는 수정 사항이 생겼을 때 올림
- Patch(수버전): 기능에 버그를 해결했을 때 올림
버전 기호
버전 앞에 기호를 붙여 의미를 더할 수 있다.
기타 npm 명령어
'전공수업 > Node.js' 카테고리의 다른 글
[Express] 미들웨어 #2 body-parser, cookie-parser, express-session (0) | 2024.06.15 |
---|---|
Express란 무엇인가(+ 미들웨어) (0) | 2024.06.14 |
[JavaScript] Callback Hell, Promise, async/await (0) | 2024.05.01 |
[JavaScript] 화살표 함수, this, 비구조화 할당 (0) | 2024.05.01 |
[Node.js] 파일 시스템 (0) | 2024.04.30 |
댓글