개발/JS

[npm] Working with package.json

devriver 2018. 4. 16. 15:17
반응형

05. Working with package.json


로컬에 설치된 npm 패키지를 관리하는 최상의 방법은 package.json 파일을 생성하는 것입니다.


package.json 파일은 :


      • 프로젝트가 의존하고 있는 패키지들의 리스트를 보여줍니다.
      • semantic versioning rule에 따라 프로젝트에 의존한 패키지들의 버전을 설정할 수 있습니다.
      • 빌드를 재현할 수 있으므로, 좀 더 쉽게 다른 개발자와 공유할 수 있습니다.




요구사항


package.json 파일이 반드시 가져야하는 것


      • "name"
        • 소문자
        • 한단어, 띄어쓰기 허용X
        • - (dashes) 와 _ (underscores) 허용O
      • "version"
        • x.x.x 형태
        • semver spec을 따름


{

"name" : "my-awesome-package",

"version" : "1.0.0"

}






package.json 파일 생성하기


1. Run a CLI questionnaire


> npm init


2. Create a default package.json


> npm init --yes 


#--yes === -y


위 명령어는 현재 디렉토리로부터 정보를 추출해서 해당 package.json 파일을 생성합니다.


{

"name": "my_package", "description": "", "version": "1.0.0", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "repository": { "type": "git", "url": "https://github.com/ashleygwilliams/my_package.git" }, "keywords": [], "author": "", "license": "ISC", "bugs": { "url": "https://github.com/ashleygwilliams/my_package/issues" }, "homepage": "https://github.com/ashleygwilliams/my_package" }


    • name : 현재 디렉토리 이름
    • version : 항상 1.0.0
    • description : readme 정보 또는 ""
    • main : 항상 index.js
    • scripts : 기존적으로 빈 테스트 스크립트를 만든다.
    • keywords : empty
    • author : empty
    • license : ISC
    • bugs : 현재 디렉토리의 정보
    • homepage : 현재 디렉토리의 정보


다음과 같이 명령어 실행시 옵션을 설정할 수 있습니다.


> npm set init.author.email "wombat@npmjs.com" > npm set init.author.name "ag_dubs" 

> npm set init.license "MIT" 






Dependencies 지정하기


프로젝트가 의존하는 패키지를 지정하려면 package.json 파일에 사용할 패키지들을 나열해야합니다.

그리고 패키지들은 두 개의 타입으로 나열될 수 있습니다.


      • "dependencies" : 프로젝트 배포 시
      • "devDependencies" : 프로젝트 개발 또는 테스트 시



package.jsondp dependencies를 추가하는 더 쉬운 방법은 npm install 명령어 실행시 --save 또는 --save-dev 플래그를 사용하는 것 입니다.


> npm install <package_name> --save

> npm install <package_name> --save-dev