Ошибка запуска npm с помощью приложения create-react-app
У меня есть проект, который я не касался в течение 2 недель. Я беру его обратно, и теперь, когда я пытаюсь запустить 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! [email protected] start: 'react-scripts start'
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the [email protected] 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
- mac sierra 10.12
package.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"
}
}
Я также пытаюсь клонировать мои репозитории и получать ту же ошибку. Если кто-то может дать мне способ узнать, что произойдет. Спасибо
Ответы
Ответ 1
Автор приложения Create React App.
Вы абсолютно не должны устанавливать react-scripts
всему миру.
Вы также не нуждаетесь ./node_modules/react-scripts/bin/
в package.json
как следует из этого ответа.
Если вы видите следующее:
npm ERR! [email protected] start: 'react-scripts start'
npm ERR! spawn ENOENT
Это просто означает, что что-то пошло не так, когда зависимости были установлены в первый раз.
Я предлагаю сделать эти три шага:
-
npm install -g [email protected]
для обновления npm, потому что это иногда багги. -
rm -rf node_modules
чтобы удалить существующие модули. -
npm install
для переустановки зависимостей проекта.
Это должно решить проблему.
Если это не так, сообщите об ошибке со ссылкой на ваш проект и версии узла и npm.
Ответ 2
Похоже, что у вас нет react-scripts
в вашей глобальной среде. Здесь доступны две возможности:
npm install -g react-scripts
или в вашем пакете.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"
},
Ответ 3
Да, вы не должны устанавливать интерактивные сценарии по всему миру, это не сработает.
Я думаю, что я не использовал --save, когда я впервые создал проект (на другой машине), поэтому для меня это устранило проблему:
npm install --save react react-dom react-scripts
Ответ 4
Как сказал Дэн,
Если вы видите следующее:
npm ERR! [email protected] start: 'react-scripts start'
npm ERR! spawn ENOENT
Это просто означает, что что-то пошло не так, когда зависимости были установлены в первый раз.
Но у меня что-то немного отличается, потому что запуск npm install -g [email protected]
для обновления npm иногда может оставить вас с этой ошибкой:
npm ERR! code ETARGET
npm ERR! notarget No matching version found for [email protected]
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 [email protected]
, я предлагаю выполнить следующие шаги:
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.
Это должно вернуть вас на ноги.
Ответ 5
возможно, конфликт с другой библиотекой, удаление node_modules и снова npm install.
Ответ 6
Просто выполните эту команду в termux, и вам хорошо идти.
pkg install termux-exec proot
Ответ 7
Для меня это было просто потому, что я не добавлял react-scripts
в проект так:
npm i -S react-scripts
Если это не работает, то rm node_modules
как предложено другими
rm -r node_modules
npm i
Ответ 8
если вы оказались настолько неудачливым, как я, который потратил три (3) дня подряд, пытаясь решить эту проблему, каждое предложенное здесь решение не помогло мне... создайте файл .env в корневом каталоге вашего проекта и добавьте этот код SKIP_PREFLIGHT_CHECK=true
. Удачи