개발일기

Node.js - package.json이란? 본문

Javascript/Node.js

Node.js - package.json이란?

Flashback 2021. 9. 3. 17:45
728x90
반응형

 

0. package.json이란?

package.json이란 현재 프로젝트에 관한 정보와 패키지 매니저(npm, yarn)을 통해 설치한 모듈들의 의존성을 관리하는 파일이다.

{
  "name": "tutorial",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC"
}

이름처럼 JSON 포맷으로 이루어져 있다.

 

1. 생성방법

npm init // 프로젝트명, 설명 등 작성할 내용이 있을 경우
npm init -y // 입력할 내용없이 package.json 생성


yarn init
yarn init -y

 

2. package.json의 기본 정보

기본 정보란 package.json을 자동으로 생성할 때(npm init), -y를 명령어를 붙이지 않은 경우 입력하게 되는 것들을 나타낸다.

name, version, description, author, license 등을 입력할 수 있는데, 프로젝트에 대한 간략한 내용을 입력할 수 있다. 처음 생성할 때 입력하지 않은 경우에 추후에 package.json을 변경하여 입력할 수 있다.

 

 

3. 버전관리

의존성 모듈을 설치하게 되면 dependencies안에 해당 모듈의 버전과 이름이 추가된다.

{
  "name": "tutorial",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "dependencies": {
    "react": "^17.0.2", // react 설치 결과
  },
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC"
}

 

 

 

1. 특정 버전인 경우

"react": "17.0.2"

 

 

2. Tilde Ranges(~)

"react": "~17.0.2"

Tilde Ranges(~)의 경우에는 마이너 버전이 명시되어 있으면 패치버전만 변경하며 버전을 적용한다.

예를 들어 ~17.0.2인 경우, 17.0.9까지 버전을 갱신한다. ~0일 경우는 0.0.0부터 0.9.9까지 버전을 갱신한다.

 

 

3. Caret Ranges(^)

"react": "^17.0.2"

Caret Ranges(^)의 경우에는 정식버전에서 마이너버전과 패치버전을 변경하며 버전을 적용한다.

예를 들어 ^17.0.2인 경우, 17.9.9까지 버전을 갱신하다. ^0일 경우는 0.0.0부터 0.0.9.까지 버전을 갱신한다.

 

 

4. 의존성 모듈 설치

package.json은 의존성을 모듈을 관리하는 하나의 파일이다. 즉, 모듈들이 차곡차곡 쌓일 수록 dependencies에는 다양한 내용들이 추가된다. 이 파일 하나로 프로젝트에 필요한 모듈들을 한번에 설치할 수 있다.

npm install

 

이 명령어를 통해 package.json - dependencies에 명시되어져 있는 모듈들의 버전에 따라 설치를 진행한다.

728x90
반응형

'Javascript > Node.js' 카테고리의 다른 글

Node.js - PM2로 프로세스 관리하기  (0) 2023.04.02
Node.js - Babel이란?  (0) 2021.09.16
npm install 옵션의 차이  (0) 2021.09.16
Node.js - Express 웹 서버 만들기  (0) 2021.08.30
Comments