`npm build`는 package.json에서“build”라는 스크립트를 실행하지 않습니다. “build”: “node build.js” }, 내

새 모듈의 경우 npm buildgulp / Grunt / 기타 특수 빌드 도구없이 사용하려고 합니다.

"scripts": {
  "build": "node build.js"
},

내 build.js는 단순히

console.log('Hello')

그러나 달리기

npm build

상태가 0 인 상태로 아무 것도 인쇄하지 않고 종료합니다.

달리는:

npm install

또한 모든 정상적인 작업을 수행하지만 build.js도 실행하지 않습니다.

npm에서 빌드 스크립트를 실행하려면 어떻게해야합니까?

편집 : 간단한 bash 명령조차도 작동하지 않는 것 같습니다.

"scripts": {
    "build": "touch TESTFILE"
},

그 이름으로 파일을 만들지 않습니다.



답변

불행히도 docs에서 설명한대로 npm build이미 내부 명령입니다 .

이것은 npm link 및 npm install에 의해 호출되는 배관 명령입니다.
일반적으로 직접 호출해서는 안됩니다.

해당 명령이 이미 있기 때문에 항상 "build": "node build.js".

자체 스크립트를 실행하는 정규화 된 방법은 with run-script또는 its alias입니다run .

$ npm run build

npm start다른 방법은 짧은 방법이지만 기존 npm 명령이 그림자처럼 그림자를 표시하지 않는 경우에만 옵션 npm build입니다.


후손을 위해 (다른 사람들이 언급했듯이) npm buildnpm은 node-gyp 사용하여 네이티브 C / C ++ 노드 애드온을 빌드하는 데 사용됩니다 . 일반적으로 자동으로 발생하기 때문에 잘 문서화되어 있지 않지만 관심이 있다면 소스 코드는 여기에 있습니다 .


답변

“build”라는 스크립트 package.json는 특별한 것이 아닙니다. 그것을 실행하는 유일한 방법은 다음을 호출하는 것입니다.

npm run-script build

npm의해 자동으로 호출되는 이름이 있지만 “build”는 그 중 하나가 아닙니다. 전체 목록은 다음과 같습니다.

  • prepublish, publish,postpublish
  • preinstall, install,postinstall
  • preuninstall, uninstall,postuninstall
  • preversion, version,postversion
  • pretest, test,posttest
  • prestop, stop,poststop
  • prestart, start,poststart
  • prerestart, restart,postrestart
  • preCUSTOM그리고 postCUSTOM커스텀 스크립트 이름.

답변

좋아, 자체 빌드를 실행하려면 다음을 사용하십시오.

npm run-script build

답변

npm run build아무 것도 인쇄하지 않는 데 문제가있었습니다 . 사용 결국 npm run build --verbose내가 필요한 출력을 얻을 수 있습니다.


답변

Npm 빌드 예상

루트에 package.json 파일을 포함하는 폴더

전형적인 npm start와 같이 package.json에서 npm 스크립트 를 사용해보십시오.