对于一个新模块,我try 使用npm build而不使用gulp/Grunt/其他专业构建工具.

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

我的身材.js只是

console.log('Hello')

然而, run

npm build

只需退出,不打印任何内容,状态为0.

run :

npm install

也做所有正常的事情,但不运行build.也可以.

How can I make npm run my build script?

编辑:即使是简单的bash命令似乎也不起作用

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

不会用那个名字创建文件.

推荐答案

不幸的是,npm build已经是internal命令,如in the docs所述:

这是npm link和npm install调用的管道命令.

因为这个命令已经存在,所以它总是在你的"build": "node build.js"以上.

运行自己的脚本的完全限定方式是run-script or its alias run:

$ npm run build

npm start和其他是简写的方式,但只有当现有的npm命令没有像npm build那样对其进行阴影处理时,它才是一个选项.


对于后代(正如其他人所提到的),npm使用npm build来使用node-gyp构建本机C/C++ node 插件.

Node.js相关问答推荐

无法在我的 node 项目中转让Google Drive v3 API中的所有权

如何修复PostgreSQL和NodeJS/NestJS应用程序之间的日期时间和时区问题?

向url传递多个参数

Socket.io 未将用户加入给定房间

即使卷已设置,Docker Nodemon 也不会热重载

找不到 vue-template-compiler@2.6.14 的匹配版本 | Shopware 6.5 更新后的 node 问题

Axios TypeError:将循环 struct 转换为 JSON

express 和 mongoose 的新密码不正确

如何防止 Chrome 通过 Selenium 崩溃?

从 Response.json() 返回的 JSON 似乎无效?

Node.js |如何在微服务之间转发标头?

Mongodb聚合传递一个匹配的数组和一个不匹配的数组

如何在拦截器中发送不同的请求?

为什么我在生产环境中 deproy Next.js 示例项目时 CSS 不起作用?

在多个 .env 文件之间切换,例如 .env.development 和 node.js

已安装全局 NPM 包但未找到命令

如何从 Node.js 中的 URL 获取

Route.get() 需要回调函数,但得到对象未定义

Node.js - 使用异步库 - 带有对象的 async.foreach

将 NodeJS 用于大型项目