npm에서 핵심적인 역할을 하는 package.json은 패키지에 관한 정보와 의존중인 버전에 관한 정보를 담고 있습니다. 각 속성들이 어떤 역할을 하는지 알아보고 개발시 참고합니다.
{
"name": "vue-til",
"version": "0.1.0",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build",
"test:unit": "vue-cli-service test:unit",
"lint": "vue-cli-service lint"
},
"dependencies": {
"axios": "^0.19.0",
"core-js": "^3.4.4",
"vue": "^2.6.10",
"vue-router": "^3.1.3",
"vuex": "^3.1.2"
},
"devDependencies": {
"@vue/cli-plugin-babel": "^4.1.0",
"@vue/cli-plugin-eslint": "^4.1.0",
"@vue/cli-plugin-unit-jest": "^4.1.0",
"@vue/cli-service": "^4.1.0",
"@vue/eslint-config-prettier": "^5.0.0",
"@vue/test-utils": "1.0.0-beta.29",
"babel-eslint": "^10.0.3",
"eslint": "^5.16.0",
"eslint-plugin-prettier": "^3.1.1",
"eslint-plugin-vue": "^5.0.0",
"prettier": "^1.19.1",
"vue-template-compiler": "^2.6.10"
}
}
프로젝트의 이름으로 가장 중요한 역할입니다.
이름에 node나 js가 들어가면 안 됩니다.
name은 214자 보다 짧아야 하며, .이나 _로 시작할 수 없습니다.
대문자를 포함해서는 안됩니다.
프로젝트 버전을 정의합니다.
-로 태그 이름을 적을 수 없다.
프로젝트 설명으로, 문자열을 적습니다.
이 값을 true로 작성하면 중앙 저장소로 저장하지 않습니다.
프로젝트에서 자주 실행해야 하는 명령어를 scripts로 작성해두면 npm 명령어로 실행 가능합니다.
프로젝트 의존성 관리를 위한 부분입니다.
이 프로젝트가 어떤 확장 모듈을 요구하는지 정리할 수 있습니다.
일반적으로 package.json에서 가장 많은 정보가 입력되는 곳으로
애플리케이션을 설치할 때 이 내용을 참조하여 필요한 확장 모듈을 자동적으로 설치합니다.
애플리케이션 로직과 관련된 라이브러리 목록으로 개발한 어플리케이션이 특정한 확장 모듈을 사용한다면 여기에 꼭 명시 해주어야 합니다.
따라서, npm run build 에 포함됩니다.
배포할 때 포함되지 않는 라이브러리 목록으로
개발할 때만 의존하는 확장 모듈을 관리합니다.
따라서, npm run build 에 포함되지 않습니다.