当前位置: 首页 > 知识库问答 >
问题:

`npm build`不运行package.json中名为“build”的脚本

农波涛
2023-03-14

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

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

我的build.js只是

console.log('Hello')

然而,运行

npm build

仅在不打印任何内容的情况下退出,状态为0。

运行:

npm install

执行所有正常操作,但也不运行build.js。

如何让npm运行我的构建脚本?

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

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

不会生成具有该名称的文件。

共有3个答案

林弘文
2023-03-14

好的,要自行运行构建,请使用:

npm run-script build
吴靖
2023-03-14

package.json中名为“build”的脚本在任何方面都不特殊。使其运行的唯一方法是调用

npm run-script build

npm会自动调用一些名称,但“build”不是其中之一。全部名单如下:

    代码发布,代码发布,代码发布
  • pre安装安装postset
  • \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  • preversionversionpostversion
  • pretesttestposttest
  • preStopStoppostStop
  • prestartstartpoststart
  • prerestartrestartpostreet start
  • preCUSTOMpostCUSTOM用于自定义脚本名称。
公德明
2023-03-14

不幸的是,npm build已经是一个内部命令,如文档中所述:

这是npm link和npm install调用的管道命令。通常不应直接调用它。

因为该命令已经存在,所以它总是隐藏在您的构建:节点build.js上。

运行自己的脚本的完全限定方式是使用runscript或其别名run

$ npm run build

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

对于后代(如其他人所提到的)npm build由npm使用Node gyp构建本地C/C节点插件。

 类似资料:
  • 问题内容: 对于新模块,我试图在没有gulp / Grunt /其他专用构建工具的情况下使用。 我的build.js很简单 但是,跑步 仅退出而不打印任何内容,状态为0。 运行: 也可以执行所有正常操作,但是也不运行build.js。 如何让npm运行我的构建脚本? 编辑:即使简单的bash命令似乎也不起作用,例如 不使用该名称创建文件。 问题答案: 不幸的是,已经是 内部 命令,如docs中所述

  • 问题内容: 在我的文件中,我具有以下“脚本”配置。 这让我跑,并通过命令行。 这很棒!但理想情况下,由于界面的便捷性,我希望能够使用运行配置从WebStorm中运行这些任务。我一直无法弄清楚该怎么做。 有没有办法创建我自己的自定义运行配置或自动从中生成它们? 问题答案: 您可以为此使用Node.js运行配置。例如,对于: 要从命令行找到全局的node_modules路径,请使用“ npm root

  • 问题内容: 如何从“脚本” 执行PowerShell ps1脚本? 我知道如何在package.json“ scripts”中设置基本脚本。例如,使用以下配置,我可以执行该命令,该命令将向控制台输出“这仅仅是测试”: 但是,我有一个更高级的场景,我想执行一个PowerShell脚本。像这样: 我可以通过scripts对象执行这样的ps1脚本吗?是否需要任何特殊的设置/配置?还有其他限制吗? 问题答

  • 问题内容: 我希望能够在将要运行的项目目录中执行命令。 是同一目录中的文件。该命令必须特定于项目目录,这意味着如果我将项目文件夹发送给其他人,他们将能够运行相同的命令。 到目前为止,我尝试添加: 到我的package.json文件,但是当我尝试运行时,得到以下输出: 有谁知道将上述脚本添加到项目文件夹的必要步骤? *注意:该命令不能添加到bash配置文件中(不能是计算机专用命令) 如果您需要任何说

  • 当我试图在Android Studio2.1(在Ubuntu 16.04上)上构建应用程序时,它遇到了以下提示: 有谁能帮帮我吗。

  • 问题内容: 当我尝试从PyCharm IDE运行程序时,一切正常,但是如果我输入Fedora: 在shell提示中,我从1个模块收到导入错误。 当从IDE启动时,PyCharm可以执行哪些操作以使解释器找到我的依赖项?如何获得脚本以找到其依赖项,以便可以使用singe命令启动它? 问题答案: 有一些可能的原因可能导致这种情况: 相同的python解释器?检查与 它是同一工作目录吗?检查与 中的差异