package.json란?

이동현·2023년 3월 30일
0

코드 캠프 블로그

목록 보기
16/50

1. package.json이란?

package.json이란 현재 프로젝트에 관한 정보와 패키지 매니저(npm, yarn)을 통해 설치한 모듈들의 의존성을 관리하는 파일이다.
자세히 설명하자면 package.json 파일에는 프로제그와 관련된 메타데이터가 담깁니다. package.json은 주고 받는 패키지에 대한 상세 설명서라고 할 수 있습니다 즉, 패키지의 이름, 버전, 데이터 등이 담긴 파일이 바로 package.json입니다. 이러한 정보들은 모두 npm 뿐만 아니라 패키지의 최종 사용자에게 무척 중요한 것들입니다
이러한 package.json 파일을 보통 Node.js 프로젝트의 루트 디렉토리에 위치해 있으며, npm은 이를 통해 프로젝트를 식별하고, 프로젝트의 디펜던시(dependency)를 처리합니다.

그러나 기본적으로 Node.js는 package.json의 두 영역만을 깃별합니다.

{
  "name" : "underscore",
  "description" : "JavaScript's functional programming helper library.",
  "homepage" : "http://documentcloud.github.com/underscore/",
  "keywords" : ["util", "functional", "server", "client", "browser"],
  "author" : "Jeremy Ashkenas <jeremy@documentcloud.org>",
  "contributors" : [],
  "dependencies" : [],
  "repository" : {"type": "git", "url": "git://github.com/documentcloud/underscore.git"},
  "main" : "underscore.js",
  "version" : "1.1.6"
}

이를 통해 프로젝트에 대한 설명(description)과 키워드(keywords)를 살펴볼 수 있다.

설치 방법

yarn init을 터미널에 입력한다.
Node.js에서는 import, export를 쓰려면 package.json에 "type": "module"을 추가 해줘야한다.

2. package-lock.json이란?

npm install을 통해 패키지를 설치하면 node_modules 디렉토리와 함께 package-lock.json 파일이 생성됩니다.
node_modules는 프로젝트에 필요한 패키지가 실제로 설치되는 디렉토리 입니다.
pacjage0lock.json파일은 packagejson에 선언된 패키지가 설치될 때 정확한 버전과 디펜던시가 서치되도록 합니다.
npm install을 통해 패키지 설치를 진행할 때 package-lock.json을 바탕으로 패키지가 설치됩니다.
정리하자면 package.json은 프로젝트를 설명하는 역할을 하며, package-lock.json은 프로젝트에 필요한 패키지들을 실제로 설치할 수 있게 합니다.

0개의 댓글