Ошибка запуска скрипта при запуске npm start

267

Я получаю эту ошибку при попытке отладить приложение моего узла с помощью команды npm start.

Ошибка:

нпм ERR! Windows_NT 6.3.9600 npm ERR! argv "C: \ Program Files \ nodejs \\ node.exe" "C: \ Program Files \ nodejs \ node_modules \ npm \ bin \ npm-cli.js" "start" npm ERR! узел v0.12.7 нпм ERR! npm v2.11.3

нпм ERR! отсутствует скрипт: запустите npm ERR! нпм ERR! Если вам нужна помощь, вы можете сообщить об этой ошибке по адресу: npm ERR! https://github.com/npm/npm/issues npm ERR! Пожалуйста, включите следующий файл с любым запросом поддержки: npm ERR! C: \ Users \ andrmoll.NORTHAMERICA \ Documents \ GitHub \ SVIChallenge \ NPM-debug.log

Из файла отладки:

подробный стек Ошибка: отсутствует сценарий: запуск

4 многословных стека при запуске (C: \ Program Files \ nodejs \ node_modules \ npm \ lib \ run-script.js: 142: 19)

4 многословных стека в C: \ Program Files \ nodejs \ node_modules \ npm \ lib \ run-script.js: 58: 5

4 многословных стека в C: \ Program Files \ nodejs \ node_modules \ npm \ node_modules \ read-package-json \ read-json.js: 345: 5

4 многословных стека в checkBinReferences_ (C: \ Program Files \ nodejs \ node_modules \ npm \ node_modules \ read-package-json \ read-json.js: 309: 45)

4 многословных стека в финале (C: \ Program Files \ nodejs \ node_modules \ npm \ node_modules \ read-package-json \ read-json.js: 343: 3)

4 больших стека в то время (C: \ Program Files \ nodejs \ node_modules \ npm \ node_modules \ read-package-json \ read-json.js: 113: 5)

4 многословных стека в C: \ Program Files \ nodejs \ node_modules \ npm \ node_modules \ read-package-json \ read-json.js: 300: 12

4 многословных стека на evalmachine .:334:14

4 многословных стека в C: \ Program Files \ nodejs \ node_modules \ npm \ node_modules \ graceful-fs \ graceful-fs.js: 102: 5

4 многословных стека в FSReqWrap.oncomplete (evalmachine.:95:15)

Эндрю Молл
источник
4
у вас есть startсценарий, определенный в вашем package.jsonфайле?
Робби

Ответы:

382

Похоже, что вы не определили startсценарий в вашем package.jsonфайле или ваш проект не содержит server.jsфайл.

Если в корне вашего пакета есть файл server.js, то npm по умолчанию будет использовать команду запуска для узла server.js.

https://docs.npmjs.com/misc/scripts#default-values

Вы можете либо изменить имя своего скрипта приложения, server.jsлибо добавить следующее в свойpackage.json

"scripts": {
    "start": "node your-script.js"
}

Или ... ты можешь просто бежать node your-script.jsнапрямую

Робби
источник
15
Я изо всех сил пытаюсь понять, что нужно, startкогда у вас есть main?
Val
8
@Val main- это точка входа в модуль, когда вы используете его require('your-module')для включения в другой проект - docs.npmjs.com/files/package.json#main . scripts.startэто скрипт для запуска на НОМ при вводе npm start.
Робби
Непонятно, почему npm initне спрашивает о запуске скрипта. Или, по крайней мере, не использовать mainв качестве сценария запуска.
одиннадцать
Больше не нужно ничего делать, просто добавьте «scripts»: {«prestart»: «npm install», «start»: «http-сервер -a localhost -p 8000 -c-1»},
SantoshK
В моем случае все работает нормально. "Scripts": {"test": "echo \" Ошибка: тест не указан \ "&& exit 1", "start": "parcel index.html", "build": "parcel build --public-url. index.html "},
Udit Sharma
41

Эта ошибка также происходит, если вы добавили второй ключ «script» в файл package.json. Если вы просто оставите один ключ «script» в файле package.json, ошибка исчезнет.

Пламен Петков
источник
2
Этот ответ, возможно, не является точным ответом, но он, безусловно, помог мне выяснить, почему npm startне работает.
Обромиос
2
Это на самом деле точный ответ. Если ваш файл package.json содержит две записи для скриптов, он выберет вторую и проигнорирует все, что вы отметили в первой. И вы получите сообщение об ошибке в вопросе.
Джеффри Хамманссон
30

В моем случае это не сработало, потому что я использовал "scripts" дважды . После объединения - это нормально.

"scripts": {
  "test": "make test",
  "start": "node index.js"
}
Дмитрий Дорогонов
источник
index.js на самом деле файл? или что-то нам нужно создать?
tomsmithweb
@ tomsmithweb, насколько я помню - это был мой существующий файл.
Дмитрий Дорогонов
6

Пожалуйста, используйте приведенную ниже строку кода в объекте скрипта, который находится в package.json

"scripts": {
    "start": "webpack-dev-server --hot"
}

Для меня это работало отлично.

луч
источник
1
Не работал для меня Вы все еще используете $ npm run serve?
Агент Зебра
3

У меня возникла эта проблема при первой установке response-js: эти строки помогли мне решить эту проблему:

npm rm -g create-react-app
npm install -g create-react-app
npx create-react-app my-app

источник: https://stackoverflow.com/a/59260128/11652661

MbeforeL
источник
2

Проверьте файл package.json, имеющий свойство «scripts», есть или нет. если не обновлять свойство скрипта, как это

{
  "name": "csvjson",
  "version": "1.0.0",
  "description": "upload csv to json and insert it into MongoDB for a single colletion",
  "scripts": {
    "start": "node csvjson.js"
  },
  "dependencies": {
    "csvjson": "^4.3.4",
    "fs": "^0.0.1-security",
    "mongodb": "^2.2.31"
  },
  "devDependencies": {},
  "repository": {
    "type": "git",
    "url": "git+https://github.com/giturl.git"
  },
  "keywords": [
    "csv",
    "json",
    "mongodb",
    "nodejs",
    "collection",
    "import",
    "export"
  ],
  "author": "karthikeyan.a",
  "license": "ISC",
  "bugs": {
    "url": "https://github.com/homepage/issues"
  },
  "homepage": "https://github.com/homepage#readme"
}
KARTHIKEYAN.A
источник
2

Если вы используете babelify и watchify, перейдите по ссылке:

package.json

и добавьте это в «сценарии»:

"scripts": {
    "start": "watchify the-path-to-your-source-jsx-file -v -t [ babelify --presets [ react ] ] -o the-path-to-your-output-js-file"
}

Примером может быть:

"scripts": {
    "start": "watchify src/main.jsx -v -t [ babelify --presets [ react ] ] -o public/js/main.js"
}

Спасибо Марку Прайсу от DevSlopes

drjorgepolanco
источник
2

В моем случае, если это реактивный проект, вы можете попытаться обновить npm, а затем обновить ответную

npm -g install npm@version
npm install -g create-react-app
Yream
источник
затем создайте-реагируйте-приложение my_app. Спасибо, это работает
угали софт
1

следует избегать использования нестабильной версии npm.

Я заметил одну проблему, связанную с npm-версией, npm-версия 4.6.1 является стабильной, но 5.x нестабильна, поскольку package.json будет отлично настроен при создании с шаблоном по умолчанию, если это стабильная версия, поэтому мы вручную не делаем Не нужно добавлять эти сценарии.

Я получил следующую проблему на npm 5, поэтому я понизил до npm 4.6.1, тогда он работал для меня,


ОШИБКА: npm 5 еще не поддерживается


Похоже, вы используете npm 5, который был недавно выпущен.

К сожалению, приложение Create React Native не работает с npm 5. Мы рекомендуем использовать npm 4 или пряжу, пока некоторые ошибки не будут устранены.

Вы можете следить за известными проблемами с npm 5 по адресу: https://github.com/npm/npm/issues/16991.


Devas-MacBook-Air: SampleTestApp deva $ npm start npm ERR! отсутствует скрипт: начало

Deva
источник
"нестабильная версия"
Sv443
1

Другая возможная причина: вы используете npm, когда ваш проект инициализируется в Yarn. (Я сделал это сам). Так было бы yarn startвместо npm start.

kbooth1000
источник
1

Глобальная установка create-Reaction-app теперь не рекомендуется. Вместо этого удалите глобально установленный пакет create-Reaction-app, выполнив: npm uninstall -g create-реагировать-app (возможно, вам придется вручную удалить папку пакета, если эта команда не работает для вас. Некоторые пользователи сообщают, что им пришлось удалить папки вручную)

Затем вы можете запустить npx create-Reaction-app my-app, чтобы снова создать приложение реакции.

ссылка: https://github.com/facebook/create-react-app/issues/8086

Василиск Мудрый
источник
0

Убедитесь, что порты включены

var app = express();
app.set('port', (process.env.PORT || 5000));

БЛА БЛА БЛА БЛА И В КОНЦЕ, У ВАС ЕСТЬ ЭТО

app.listen(app.get('port'), function() {
    console.log("Node app is running at localhost:" + app.get('port'))
});

Еще новичок в узле JS, но это вызвало больше этого.

Хорошая жизнь
источник
0

Посмотрите на ваш клиент / package.json . Вы должны иметь эти сценарии

"scripts": {
  "start": "react-scripts start",
  "build": "react-scripts build",
  "test": "react-scripts test --env=jsdom",
  "eject": "react-scripts eject"
}
Виктор
источник
0

У вас может быть старая (глобальная) установка npm, которая вызывает проблему. По состоянию на 12/19, npm не поддерживает глобальные установки.

Сначала удалите пакет, используя:
npm uninstall -g create-react-app

Некоторым пользователям osx / Linux также может понадобиться удалить старый npm, используя:
rm -rf /usr/local/bin/create-react-app

Теперь это единственный поддерживаемый метод для создания проекта:
npx create-react-app my-app

Наконец вы можете запустить:
npm start

Али
источник
-1
"scripts": {
  "prestart": "npm install",
  "start": "http-server -a localhost -p 8000 -c-1"
}

добавьте этот фрагмент кода в ваш package.json , в зависимости от вашей собственной конфигурации.

Анкита Сингх
источник
-1

У меня такая же проблема. Я пытаюсь написать код в файле package.json, как показано ниже

    "scripts": {
    "start": "<your-script-file>.js",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
Мохамед Салах
источник
-2

Я решил мой. Это не ошибка NPM, связанная с поведением прокси.

Если вы находитесь за прокси,

MAC
 1.  Goto System Preference (gears icon on your mac)
 2.  click your network
 3.  click advanced
 4.  click proxy
 5.  check excludes simple hostnames
 6.  add this line below (Bypass Proxy Settings...) "localhost, localhost:8080"

refer to the npm echo: "Project is running at http://localhost:8080/"

Windows
 1.  Goto your browser Proxy Settings (google it)
 2.  check Bypass local address
 3.  add this line below "localhost, localhost:8080"
Эман Джейм
источник