npm 설치와 npm 실행 빌드의 차이점은 무엇입니까?
사이의 차이점은 무엇입니까?npm install
그리고.npm run build
?
이 실패하기 시작하는 것을 발견했습니다.npm install
npm run build
그것은 잘 작동합니다.
두, 즉 이 대 작 두 방 식 즉 동 내 상 부 의 ▁namely ▁work ▁targets 즉 ▁how ▁inner ▁of ings 이install
그리고.run build
npm install
을 에종성니설에 합니다.node_modules/
작업 중인 노드 프로젝트의 디렉터리입니다.전화할 수 있습니다.install
다른 node.js 프로젝트(클라이언트)에서 프로젝트에 대한 종속성으로 설치합니다.
npm run build
패키지에서 "빌드"가 수행하는 작업을 지정하지 않는 한 아무 작업도 수행되지 않습니다.json 파일.다른 프로젝트에서 사용하기 전에 프로젝트에 필요한 빌드/준비 태스크를 수행할 수 있습니다.
npm build
이며 는내부명호의출다니됩해로 됩니다.link
그리고.install
명령, 빌드 설명서에 따름:
이것은 npm link 및 npm install에서 호출되는 배관 명령어입니다.
당신은 전화하지 않을 것입니다.npm build
일반적으로 노드집프를 사용하여 네이티브 C/C++ 노드 애드온을 구축하는 데 내부적으로 사용되기 때문입니다.
2019년 NPM
npm build
더 이상 존재하지 않습니다.에 전화해야 .npm run build
지금. 아래에 더 많은 정보가 있습니다.
TLDR;
종속성을 설치한 다음 를 npm install
호출합니다.install
package.json
scripts
밭.밭.
npm run build
에서 빌드 필드를 실행합니다.package.json
scripts
밭.밭.
NPM 스크립트 필드
https://docs.npmjs.com/misc/scripts
수 이 많이 있습니다.package.json
스크립트 필드.스크립트의 수명 주기 위에 있는 위의 문서 링크를 확인하십시오. 대부분은 설치, 게시, 제거, 테스트, 시작, 중지, 축소 랩, 버전 전/후에 스크립트를 실행할 수 있는 사전 및 사후 후크를 가지고 있습니다.
일을 복잡하게 만드는 것
npm install
는 와동하않습다니지일않다▁the▁▁same와 하지 않습니다.npm run install
npm install
»package.json
종성을다음을 합니다.package.json
scripts.install
- 으로 전화 (기본으로통화적)통기▁(
npm run install
종속성이 설치된 후.
- 으로 전화 (기본으로통화적)통기▁(
npm run install
실행만 가능합니다.package.json
scripts.install
종속성을 설치하지 않습니다.npm build
유효한 명령어로 사용되었습니다(와 동일하게 사용됨).npm run build
하지만 더 이상 그렇지 않습니다. 이제는 내부 명령입니다.실행하면 다음을 얻을 수 있습니다.npm WARN build npm build called with no arguments. Did you mean to npm run-script build?
자세한 내용은 https://docs.npmjs.com/cli/build 또는 https://docs.npmjs.com/cli/v6/commands/npm-build 에서 확인할 수 있습니다.
추가 노트
스크립트를 실행하는 최상위 명령은 다음과 같습니다.
npm start
은 와같은것과 .npm run start
npm test
==>npm run test
주요 차이점은 다음과 같습니다.
npm install
는 Churro가 작성한 대로 내부에 지정된 종속성을 설치하기 위해 미리 정의된 작업을 수행하는 npm CLI 명령입니다.
npm run %command-name%
또는npm run-script %command-name%
또한 "command-name" 대신 지정된 이름으로 사용자 지정 스크립트를 실행하도록 미리 정의된 CLI 명령입니다.이 에는 래서경, 이에는우.npm run build
는 "이름을 에서 지정된 합니다(예: "build" "build" 용지스명예정크령트내인다지수모니합행작든업을정된이서름부에이며이립사자예:(▁command다).echo 'hello world'
의 예에서 것은 래의예에제시된입니다.package.json
).
주의 사항:
더, 지더요한.
npm build
그리고.npm run build
것, 두가지다것다니입른▁are▁two다.npm run build
내부에 작성된 사용자 지정 작업을 수행합니다.package.json
그리고.npm build
미리 정의된 스크립트입니다(직접 사용할 수 없음).사용자 스크립트할 수 .
npm run build
expect ) 스크트및예상립예▁)상npm build
마찬가지로.다음을 수행하여 에서 확인해 보십시오.package.json
:
{
"name": "demo",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"build": "echo 'hello build'"
},
"keywords": [],
"author": "",
"license": "ISC",
"devDependencies": {},
"dependencies": {}
}
그리고 실행npm run build
그리고.npm build
하나씩, 그리고 여러분은 차이를 볼 것입니다.명령에 대한 자세한 내용은 npm 설명서를 참조하십시오.
npm install
파일 이름은config.json config.json config입니다.npm run build
"build를 들어 server.js 파일 "build" 파일을 사용합니다. 파일 서버.jsnpm start
" "" server.js" "node server.js"가 "node server.js"가 .
문제가 무엇인지 정확히 알 수는 없지만 기본적으로 스크립트 구성을 보면 "빌드"는 일종의 빌드 도구를 사용하여 애플리케이션을 만드는 반면 "시작"은 빌드가 완료된 것으로 가정하지만 파일이 없으면 실패합니다.
당신은 아마도 bower 또는 grunt를 사용하고 있을 것입니다. 일반적인 grunt 애플리케이션은 마지막 빌드를 삭제하기 위한 "깨끗한" 스크립트뿐만 아니라 이러한 스크립트를 정의했을 것입니다.
빌드 도구는 bin/, dist/ 또는 build/폴더에 파일을 만드는 경향이 있으며, 시작 스크립트는 "node build/server.js"라고 부릅니다.의 신의경우 때.npm start
실패했습니다, 아마도 당신이 전화했기 때문일 것입니다.npm clean
또는 최신 빌드를 삭제하여 응용 프로그램 파일이 없으므로 npm 시작이 실패합니다.
build의코드 - 하자면 - 볼 수 . 드소코드스의빌이 - 면토원대면다볼니 - 당신다허입브수있는한자론해이에급의하언.실행하는 경우npm build
"빌드"빌드 를 " 직적빌 " 드접 " 스립 " 크트어 " 의되면 " 으다있 " 음과같 " 이다니 " 됩료정 " 가종빌 " 로 불러달라는 됩니다.npm run-script build
그래서 그것은 같지 않습니다.npm run script
.
나는 그것이 무엇인지 아닌지 확신할 수 없습니다.npm build
그렇긴 하지만 설치 후 및 패키징 스크립트의 종속성과 관련이 있는 것 같습니다.따라서 종속성에 필요한 모든 CLI 빌드 스크립트 또는 네이티브 라이브러리가 패키지를 다운로드한 후 특정 환경에 맞게 빌드될 수 있습니다.이것이 링크 및 설치가 이 스크립트를 호출하는 이유입니다.
언급URL : https://stackoverflow.com/questions/43664200/what-is-the-difference-between-npm-install-and-npm-run-build
'programing' 카테고리의 다른 글
명령줄을 사용하여 지정된 경로에서 node_modules 폴더를 재귀적으로 삭제합니다. (0) | 2023.05.17 |
---|---|
Mac + virtualenv + pip + postgresql = 오류: pg_config 실행 파일을 찾을 수 없습니다. (0) | 2023.05.17 |
Postgre가 무슨 뜻입니까?SQL 프로세스가 "거래 중 유휴" 상태입니까? (0) | 2023.05.17 |
왜 무작위로.셔플 리턴 없음? (0) | 2023.05.17 |
문자열이 유효한 HTTP URL인지 확인하는 방법은 무엇입니까? (0) | 2023.05.17 |