100

我有一个两周没碰的项目。我把它拿回来,现在当我尝试运行时,npm start我得到了这个错误。

> react-scripts start

sh: react-scripts: command not found

npm ERR! Darwin 16.0.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "start"
npm ERR! node v6.7.0
npm ERR! npm  v3.10.3
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn
npm ERR! UpScore@0.6.0 start: `react-scripts start`
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the UpScore@0.6.0 start script 'react-scripts start'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the UpScore package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     react-scripts start
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs UpScore
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls UpScore
npm ERR! There is likely additional logging output above.
  • 节点 6.7.0
  • npm 3.10.3
  • 麦克塞拉 10.12

包.json

{
  "name": "UpScore",
  "version": "0.6.0",
  "private": true,
  "devDependencies": {
    "react-addons-test-utils": "^15.3.1",
    "react-scripts": "0.4.1",
    "react-test-renderer": "^15.3.1",
    "redux-logger": "^2.6.1"
  },
  "dependencies": {
    "@yoshokatana/medium-button": "^1.1.0",
    "axios": "^0.14.0",
    "bcrypt": "^0.8.7",
    "bcrypt-nodejs": "0.0.3",
    "bcryptjs": "^2.3.0",
    "body-parser": "^1.15.2",
    "connect-flash": "^0.1.1",
    "cookie-parser": "^1.4.3",
    "draft-js": "^0.8.1",
    "draft-js-editor": "^1.7.2",
    "draft-js-export-html": "^0.4.0",
    "ejs": "^2.5.2",
    "email-verification": "^0.4.5",
    "express": "^4.14.0",
    "express-session": "^1.14.1",
    "flexboxgrid": "^6.3.1",
    "highlight.js": "^9.6.0",
    "immutable": "^3.8.1",
    "katex": "^0.6.0",
    "lodash": "^4.15.0",
    "markdown-it-mathjax": "^1.0.3",
    "material-ui": "^0.15.4",
    "medium-editor": "^5.22.0",
    "minutes-seconds-milliseconds": "^1.0.3",
    "moment": "^2.15.0",
    "moment-duration-format": "^1.3.0",
    "mongod": "^1.3.0",
    "mongodb": "^2.2.9",
    "mongoose": "^4.6.0",
    "monk": "^3.1.2",
    "morgan": "^1.7.0",
    "normalize.css": "^3.0.3",
    "passport": "^0.3.2",
    "passport-local": "^1.0.0",
    "react": "^15.3.1",
    "react-dom": "^15.3.1",
    "react-markdown": "^2.4.2",
    "react-medium-editor": "^1.8.1",
    "react-redux": "^4.4.5",
    "react-redux-form": "^0.14.5",
    "react-rich-markdown": "^1.0.1",
    "react-router": "^2.7.0",
    "react-router-redux": "^4.0.5",
    "react-tap-event-plugin": "^1.0.0",
    "react-tinymce": "^0.5.1",
    "redux": "^3.6.0",
    "redux-form": "^6.0.5",
    "redux-form-material-ui": "^4.0.1",
    "redux-promise-middleware": "^4.0.0",
    "redux-thunk": "^2.1.0",
    "reselect": "^2.5.3",
    "screenfull": "^3.0.2"
  },
  "scripts": {
    "start": "react-scripts start",
    "start:prod": "pushstate-server build",
    "build": "react-scripts build",
    "test": "react-scripts test --env=jsdom",
    "eject": "react-scripts eject",
    "server": "cd client/api && pm2 start server.js --watch",
    "proxy": "http://128.199.139.144:3000"
  },
  "eslintConfig": {
    "extends": "./node_modules/react-scripts/config/eslint.js"
  }
}

我也尝试克隆我的存储库并得到相同的错误。如果有人可以给我一些方法来找出发生了什么。谢谢

4

23 回答 23

262

Create React App 的作者签到。

您绝对不应该react-scripts全局安装。正如这个答案所暗示的那样,
也不需要。./node_modules/react-scripts/bin/package.json

如果你看到这个:

npm ERR! UpScore@0.6.0 start: `react-scripts start`
npm ERR! spawn ENOENT

这只是意味着第一次安装依赖项时出现了问题。

我建议执行以下三个步骤:

  1. npm install -g npm@latest更新 npm 因为它有时是错误的。
  2. rm -rf node_modules删除现有模块。
  3. npm install重新安装项目依赖项。

这应该可以解决问题。
如果没有,请使用指向您的项目和 Node 和 npm 版本的链接提出问题。

于 2016-10-10T14:42:33.097 回答
11

似乎react-scripts您的全球环境中没有。这里有两种可能性:

npm install -g react-scripts

或在您的 package.json 中更改您的脚本部分,如下所示:

  "scripts": {
    "start": "./node_modules/react-scripts/bin/react-scripts.js start",
    "start:prod": "pushstate-server build",
    "build": "./node_modules/react-scripts/bin/react-scripts.js build",
    "test": "./node_modules/react-scripts/bin/react-scripts.js test --env=jsdom",
    "eject": "./node_modules/react-scripts/bin/react-scripts.js eject",
    "server": "cd client/api && pm2 start server.js --watch",
    "proxy": "http://128.199.139.144:3000"
  },
于 2016-10-10T14:23:31.563 回答
9

是的,你不应该全局安装 react-scripts,它不会工作。

我想我第一次创建项目时(在另一台机器上)没有使用 --save ,所以对我来说这解决了问题:

npm install --save react react-dom react-scripts
于 2017-09-22T12:53:26.083 回答
9

以防你碰巧像我一样不幸,连续三(3)天试图解决这个问题,这里提出的每个解决方案都失败了……在你的项目根目录中创建一个 .env 文件并添加此代码SKIP_PREFLIGHT_CHECK=true。祝你好运

于 2019-06-10T21:42:43.987 回答
6

这是为了帮助其他全新的人做出反应,以及在刚开始第一个应用程序时遇到问题的人,即使他们进行了全新安装并尝试使用 npm install 和我在论坛上看到的其他修复程序。

在安装了所有最新 npm create-react-app 的 Windows 10 上运行它,并且在一个简单的 my-app 演示文件夹中的简单 npm start 失败后失败。

花了很长时间处理最初看起来类似于 OP 错误但略有不同的错误。这从 ERRNO 4058 开始,然后是代码 'ENOENT' 系统调用:'spawn cmd',路径:''cmd' ...

最终从 github create-react-app 论坛解决了这个问题的快速解决方法是在“路径”变量中注册 cmd。为此,请转到系统属性>环境变量。单击路径变量编辑并添加 C:\Windows\System32 的新条目。重新启动 CMD 提示,我很高兴。

于 2019-11-26T15:01:47.080 回答
5

正如丹正确地说,

如果你看到这个:

npm ERR! UpScore@0.6.0 start: `react-scripts start`
npm ERR! spawn ENOENT

这只是意味着第一次安装依赖项时出现了问题。

但我得到了一些稍微不同的东西,因为运行npm install -g npm@latest更新 npm 有时可能会给你留下这个错误:

npm ERR! code ETARGET
npm ERR! notarget No matching version found for npm@lates
npm ERR! notarget In most cases you or one of your dependencies are requesting
npm ERR! notarget a package version that doesn't exist.

所以,npm install -g npm@latest我建议不要运行,而是运行以下步骤:

 npm i -g npm //which will also update npm
 rm -rf node_modules/ && npm cache clean // to remove the existing modules and clean the cache.
 npm install //to re-install the project dependencies.

这应该让你重新站起来。

于 2018-04-05T05:39:26.087 回答
5

我可能很晚才回答这个问题,但这对我有用,它可能会帮助某人回到开发轨道!

nvm install v12.0 // You may need to install nvm, if not already done
rm -rd node_modules/
npm cache clean --force
npm install

干杯!!

于 2020-12-06T05:39:42.053 回答
2

对我来说,这只是我没有添加react-scripts到项目中,所以:

npm i -S react-scripts

如果这不起作用,那么 rmnode_modules按照其他人的建议

rm -r node_modules
npm i
于 2018-11-23T10:47:37.710 回答
2

我遇到了以下问题。

在此处输入图像描述

请找到解决方案:

  1. “C:\Windows\System32”添加到全局 PATH 环境变量中。

  2. 检查是否为nodejs、npm 和 composer创建了环境变量。如果不创建一个

在此处输入图像描述

  1. 运行您的应用程序。
于 2020-04-30T14:31:43.720 回答
2

运行时我遇到了同样的错误

npm 开始

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! protest-app@0.1.0 start: `react-scripts start`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the protest-app@0.1.0 start script.

我在几个选项卡上打破了我的头,并应用了其他开发人员的解决方案,但什么也没有。

直到,即使使用 Ubuntu,我关闭了我的 vscode 并重新启动了我的电脑,我的所有问题都得到了解决。(kkkk zueira) 就是这个。

于 2020-06-17T02:41:09.577 回答
2

在windows中添加环境变量

  1. C:\WINDOWS\System32
  2. C:\程序文件\nodejs
  3. C:\Program Files\nodejs\node_modules\npm\bin
  4. C:\WINDOWS\System32\WindowsPowerShell\v1.0
  5. C:\Users{您的系统名称不带花括号}\AppData\Roaming\npm

这5个是必须的。

并使用最新版本的 node.js

于 2020-09-03T16:40:29.343 回答
1

我通过运行以下命令解决了这个问题

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

希望能帮助到你

于 2020-01-18T06:14:35.143 回答
1

添加带有“SKIP_PREFLIGHT_CHECK=true”的 .env 文件,而不是 npm start

于 2020-02-29T10:46:15.010 回答
1

我使用以下命令修复此问题:

npm install -g react-scripts
于 2020-03-22T06:09:00.210 回答
1

这很简单,但第一次设置需要几个步骤!

  1. 您在节点上有最新版本。

  2. 转到环境变量并设置路径"%SystemRoot%\system32"

在此处输入图像描述

  1. 以管理员模式运行cmd。

  2. 写命令 npm start。

于 2020-07-21T16:05:49.293 回答
1

npm install在项目中运行然后npm start 它工作

于 2021-03-09T10:25:45.767 回答
1

只需删除“node_module”文件,如果它在文件夹中看起来有点灰色,这意味着它不存在只需关闭 vs 代码并重新打开然后

使用“npm install”安装 npm。

于 2021-10-19T08:37:53.953 回答
0

可能与其他库发生冲突,删除 node_modules 并再次 npm install。

于 2018-01-03T21:10:52.567 回答
0

当 node_modules 与 package.json 不同步时会发生这种情况。

在根目录和任何可能包含 node_modules 文件夹的子服务/子文件夹中运行以下命令。

rd node_modules /S /Q
npm install
于 2019-12-11T13:53:32.150 回答
0

我想到了,但以上都没有奏效。

events.js:72
        throw er; // Unhandled 'error' event
              ^

npm ERR! UpScore@0.6.0 start: `react-scripts start`
npm ERR! spawn ENOENT

Error: spawn ENOENT
    at errnoException (child_process.js:1000:11)
    at Process.ChildProcess._handle.onexit (child_process.js:791:34)

发生这种情况是因为您可能已react-scripts全局安装。

为了使这项工作...

  1. 去你的C:\Users\<USER>\AppData\Roaming
  2. 删除 npm 和 npm-cache 目录...(不用担心您可以稍后全局安装 npm)
  3. 返回您的应用程序目录并删除node_modules文件夹
  4. 现在输入npm install安装依赖项(如果已创建,请删除 package-lock.json)
  5. 现在运行npm install --save react react-dom react-scripts
  6. 开始使用npm start

这应该让你回到正轨......快乐编码

于 2020-02-14T12:09:52.660 回答
0

我的问题源于权限问题。我按照这个 https://docs.npmjs.com/resolving-eacces-permissions-errors-when-installing-packages-globally解决了我的问题

于 2020-02-14T14:11:27.817 回答
0

输入unset HOST您的终端。

于 2020-05-05T11:23:31.060 回答
0

我在本地创建了反应项目。发生此问题的原因(对我而言)是我以前没有使用sudonpm,它需要root访问权限(

> sudo npm start

PS1:对于windows用户,powershell或者command line应该以管理员身份运行

PS2:如果想解决root权限问题,可以看这篇文章

于 2020-08-19T15:19:06.523 回答