본문 바로가기

Programming/Node.js

6. 패키지 매니저 (1) - npm [3]

node js logo image

 

 

 

 

 

 

이제부터 실제로 패키지 설치를 진행해 보겠습니다. 우선 익스프레스(Express)를 설치할텐데, 기본적으로 패키지 설치 방식은 npm install [패키지 이름] 입니다. 참고로 명령어는 package.json이 있는 폴더에서 진행합니다. 

 

C:\>npm install express

added 64 packages, and audited 65 packages in 6s

12 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities

 

 

위와 같이 정상적으로 설치가 완료된 이후에 package.json을 확인해 보겠습니다. 

 

[package.json]

{
  "name": "npmtest",
  "version": "0.0.1",
  "description": "hello package.json",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "johndoe",
  "license": "ISC",
  "dependencies": {
    "express": "^4.19.2"
  }
}

 

 

속성 값에 dependencies가 생기고, express의 버전 명이 함께 출력됩니다(^의 의미는 추후 살펴보겠습니다). 참고로 프로젝트의 이름 - "name" 속성 - 은 express여서는 안됩니다. 프로젝트 명과 패키지 명은 달라야 합니다. 

 

참고로 Express 설치 후에 빈 폴더에 [node_modules]라는 폴더가 생기고, 이 폴더 안에 여러개의 폴더가 설치된 것을 확인할 수 있습니다. Express 이외의 패키지도 함께 설치된 것을 확인할 수 있는데, 이는 Express가 의존하는 여러가지 패키지들 입니다. 패키지가 의존하는 패키지, 또 그 패키지가 의존하는 패키지...가 존재하기 때문에 package.json이 필요합니다. 추가로, package-lock.json 파일도 생성이 되는데 여기에는 각 패키지의 의존성 관계가 상세하게 출력되어 있습니다.