高级反应脚本导致找不到命令

Posted

技术标签:

【中文标题】高级反应脚本导致找不到命令【英文标题】:advanced-react-scripts resulting in command not found 【发布时间】:2018-08-16 21:51:05 【问题描述】:

我认为我做的事情根本上是错误的。 我遵循简单的安装步骤: yarn add advanced-react-scripts

在那之后,我假设我必须将我的 package.json 更改为以下内容 ... "scripts": "start": "advanced-react-scripts start", "build": "advanced-react-scripts build", "test": "advanced-react-scripts test --env=jsdom", "eject": "react-scripts eject" , ...

但是当我尝试运行 yarn run build 时,我收到以下错误: ` /usr/local/bin/node /usr/local/Cellar/yarn/1.3.2/libexec/bin/yarn.js 运行构建 纱线运行 v1.3.2 $ 高级反应脚本构建 /bin/sh:高级反应脚本:找不到命令 错误命令失败,退出代码为 127。 info 请访问https://yarnpkg.com/en/docs/cli/run 获取有关此命令的文档。

进程以退出代码 1 结束`

我很确定我错过了一些东西,也许有人可以指导我正确的方向。

【问题讨论】:

【参考方案1】:

根据文档,仅更改 package.json 中的脚本似乎是不够的。

如果您要将其添加到现有的 create-react-app 应用程序中,应采取这些步骤。

(可选)如果你有 create-react-app 创建的现有项目,你可以删除默认的 react-scripts

为此,运行命令:

npm uninstall --save react-scripts 或 yarn uninstall react-scripts

安装高级脚本后。

接下来我们需要安装高级反应脚本:

npm install --save-dev advanced-react-scripts 或 高级反应脚本

这是基于此处找到的文档 -> https://www.npmjs.com/package/advanced-react-scripts

【讨论】:

没有做这一切,它还说这是可选的,但我还是做了,但它不起作用。 另外,我的第一句话表明我不只是简单地更改我的 package.json。当然,我安装了这个包,即使第一步是可选的(卸载原始的 react-scripts 包)我仍然做了。实际上两种方式都试过了。 我知道您当然安装了它,但我的想法是,为了更改脚本,您还需要卸载旧的脚本。我也很确定它是可选的,只是因为您的原始应用程序可能不是使用 create-react-app 创建的。 @janbrot 我刚刚尝试了以下步骤。使用create-react-app 创建了一个新应用程序,卸载了反应脚本,安装了高级反应脚本。这些是我的结果。 npm start 运行正常,npm run build 失败,但没有说 command not found,npm run test 也是如此。 您的错误信息是什么,为了确保您确实将 package.json 中的脚本部分更改为 advanced-react-scripts start 而不是 react-scripts,对吧?

以上是关于高级反应脚本导致找不到命令的主要内容,如果未能解决你的问题,请参考以下文章

$ yarn install 导致找不到模块 yarn-berry.js

找不到模块“反应”的声明文件

自动化测试脚本中包含adb命令,jenkins构建时找不到adb解决办法

Windows 命令找不到脚本

ReferenceError:找不到变量:文本(我正在使用 expo 应用程序进行本机反应)

使用 Yarn 或 NPM 进行原生反应找不到 @expo/bunyan。我必须做啥?