알아가기/NodeJS

[NodeJS] 프로젝트 관리 정보를 담고 있는 package.json

XEV 2023. 5. 27. 20:15

package.json은 Node.js 프로젝트에서 사용되는 중요한 파일이다. 이 파일은 프로젝트의 메타데이터와 의존성 관리에 필요한 정보를 포함한다. package.json은 프로젝트의 루트 디렉토리에 위치하며, 프로젝트 설정, 스크립트, 의존성 패키지 등을 기술하는 JSON(JavaScript Object Notation) 형식의 파일이다.

 

 

 

npm init 을 통해 생성하고 필드를 지정할 수 있다.
다음은 기본적인 package.json 파일의 형태이다. 

 

{
  "name": "my-project",
  "version": "1.0.0",
  "description": "My Node.js project",
  "main": "index.js",
  "scripts": {
    "start": "node index.js",
    "test": "mocha"
  },
  "author": "My Name",
  "license": "MIT",
  "dependencies": {
    "express": "^4.17.1",
    "lodash": "^4.17.21"
  },
  "devDependencies": {
    "mocha": "^9.0.0"
  }
}


- name: 프로젝트의 이름을 지정. 이름은 고유해야 함.
- version: 프로젝트의 버전을 지정. Semantic Versioning 형식을 따르는 것이 일반적.
- description: 프로젝트에 대한 간단한 설명을 제공.
- main: 프로젝트의 진입점 파일을 지정. 일반적으로 `index.js`로 설정.
- scripts: 프로젝트에서 실행 가능한 명령어를 정의. 예제에서는 `start``test` 스크립트가 있음.
- author: 프로젝트의 작성자를 지정.
- license: 프로젝트의 라이선스를 지정.
- dependencies: 프로젝트의 종속성 패키지 목록을 정의. 예제에서는 Express와 Lodash가 종속성으로 포함됨.
- devDependencies: 개발 중에만 필요한 종속성 패키지 목록을 정의. 예제에서는 Mocha가 개발 종속성으로 포함됨.

 

 


package.json 파일은 프로젝트의 빌드, 실행, 테스트 등을 위한 스크립트 실행에 중요한 역할을 한다. 예를 들어, `npm start` 명령어를 실행하면 `start` 스크립트에 정의된 `node index.js` 명령어가 실행된다. 마찬가지로 `npm test` 명령어를 실행하면 `test` 스크립트에 정의된 `mocha` 명령어가 실행된다.

의존성 관리는 package.json의 `dependencies``devDependencies` 섹션을 통해 이루어지나. 프로젝트가 실행되거나 개발되는 데 필요한 패키지들을 명시하고, 각 패키지의 버전 요구사항도 정의할 수 있다. 예제에서는 Express와 Lodash에 대한 버전 범위가 지정되어 있으며, `^`는 호환되는 새로운 마이너 버전을 허용한다는 의미이다.

 

 


이러한 방식으로 package.json 파일은 Node.js 프로젝트의 구성 요소와 의존성 관리를 효과적으로 관리할 수 있는 중요한 파일이다.

 

 

 

 

 

참고

https://docs.npmjs.com/creating-a-package-json-file

 

Creating a package.json file | npm Docs

Documentation for the npm registry, website, and command-line interface

docs.npmjs.com

 

 

'알아가기 > NodeJS' 카테고리의 다른 글

[NodeJS] CommonJS & ES Module 차이 확인 및 변경 방법  (0) 2023.07.07