package.json 파일을 사용하면 얻는 이점
1. package.json 자체로 프로젝트에서 어떠한 의존성을 이용하고 있는지 설명해준다.
2. semantic version rules를 이용하여 프로젝트의 패키지 버젼을 지정할 수 있다.
3. 빌드를 다시 수행할 수 있다. 이는 다른 개발자와 협업을 쉽게 해준다.
필수사항 :
package.json의 최소 요건은 다음과 같다.1. "name"
- 모두 소문자로 작성 되어야한다.
- 공백 없이 한단어가 되어야한다.
- 대쉬(-), 언더스코어(_) 는 허용된다.
2. "version"
예제 :
{
"name": "test-package",
"version": "1.0.0"
}
package.json 생성하기
package.json을 생성하는 2가지 방법은 다음과 같다.1. 대화형
// 대화형식으로 물어보면서 package.json 파일을 생성한다.대화형 패키지 생성 과정 :
npm init
KIDOui-iMac:~ KIDO$ npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.
See `npm help json` for definitive documentation on these fields
and exactly what they do.
Use `npm install <pkg> --save` afterwards to install a package and
save it as a dependency in the package.json file.
Press ^C at any time to quit.
name: (KIDO) test-package
version: (1.0.0)
description: my_test_package
git repository:
author: test_author
license: (ISC) ISC
About to write to /Users/KIDO/package.json:
{
"name": "test-package",
"version": "1.0.0",
"description": "my_test_package",
"main": "index.js",
"dependencies": {
"connect": "^3.4.1"
},
"devDependencies": {},
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "test_author",
"license": "ISC"
}
Is this ok? (yes) yes
2. 기본 생성형
// 디폴트 값을 이용하여 package.json파일을 생성한다.
npm --yes
npm -y
디폴트 생성결과
KIDOui-iMac:~ KIDO$ cat package.json
{
"name": "KIDO",
"version": "1.0.0",
"description": "",
"main": "index.js",
"dependencies": {
"connect": "^3.4.1"
},
"devDependencies": {},
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC"
}
필드 설명 :
name- 기본적으로 author의 이름이며, 지정하지 않는경우 git의 리포지토리 이름이 세팅된다.
version
- 항상 1.0.0이다.
main
- 항상 index.js이다.
scripts
- 입력하지 않으면 기본적으로 test 스크립트를 생성한다.
keywords
- 빈값이 기본으로 들어간다.
author
- CLI가 제공된경우 해당 내용이 표시된다.
license
- ISC이다.
repository
- git등이 존재하면 현재 디렉토리의 정보를 뽑아올 것이다.
bugs
- 현재 디렉토리로 부터 정보를 뽑아온다.
homepage
- 현재 디렉토리로 부터 정보를 뽑아온다.
기본적으로 몇가지 설정 옵션을 init command에 설정할 수 있다.
> npm set init.author.email "wombat@npmjs.com"
> npm set init.author.name "ag_dubs"
> npm set init.license "MIT"
패키지 의존성 지정하기.
패키지 의존성을 지정하는 타입은 2가지가 있다."dependencies" : 이 패키지들은 프로덕션에서 당신의 어플리케이션에 의해 필요한 패키지를 나열한다.
"devDependencies" : 이 패미지들은 오직 개발과 테스팅에서만 필요한 패키지를 나열한다.
수동으로 의존성 지정하기.
- 수동으로 의존성을 지정하기 위해서는 package.json 파일을 열고 dependencies와 devDepencencies 영역을 추가하면 된다.{
"name": "my_package",
"version": "1.0.0",
"dependencies": {
"my_dep": "^1.0.0"
},
"devDependencies" : {
"my_test_framework": "^3.1.0"
}
}
자동으로 의존성 지정하기.
1. depencencies 영역에 추가하기.npm install <package_name> --save2. devDepencencies 영역에 추가하기.
npm install <package_name> --save-dev
참고 : https://docs.npmjs.com/getting-started/using-a-package.json
2 개의 댓글
Write 개의 댓글잘 보고갑니다
Reply링크 담아갈게요!
ReplyEmoticonEmoticon