npm не может найти package.json


153

Я пытаюсь установить зависимости некоторых примеров: npm, express 2.5.8которые я скачал, но все приложения выдают одну и ту же ошибку:

c:\node\stylus>npm install -d
npm info it worked if it ends with ok
npm info using npm@1.1.1
npm info using node@v0.6.11
npm ERR! Couldn't read dependencies.

npm ERR! Error: ENOENT, no such file or directory 'c:\node\stylus\package.json'
npm ERR! You may report this log at:
npm ERR!     <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR!     <npm-@googlegroups.com>
npm ERR!
npm ERR! System Windows_NT 6.1.7600
npm ERR! command "C:\\Program Files (x86)\\nodejs\\\\node.exe" "C:\\Program File
s (x86)\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "-d"
npm ERR! cwd c:\node\stylus
npm ERR! node -v v0.6.11
npm ERR! npm -v 1.1.1
npm ERR! path c:\node\stylus\package.json
npm ERR! code ENOENT
npm ERR! message ENOENT, no such file or directory 'c:\node\stylus\package.json'

npm ERR! errno {}
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     c:\node\stylus\npm-debug.log
npm not ok

Блокировка выглядит так:

нет такого файла или каталога 'c: \ node \ stylus \ package.json

Я пропустил шаг, который создает package.json?

Я бегу:

  • Windows 7 64 бит
  • нпм 1.1.1
  • узел 6.11
  • экспресс 2.5.8

Как вы загрузили пакеты? Можете ли вы установить их обычным способом (т.е. с помощью npm install <package>?
Линус Тиль

Я этого не пробовал, потому что точно не знаю, какие пакеты используются в приложениях. Как я могу это выяснить, чтобы я мог попробовать установить их вручную?
imjp

1
npm view <package>покажет вам package.jsonвместе с зависимостями. Также npm helpтвой друг.
Линус Тиль

Я проверил файл пакета с, npm view packageно я получаю эту ошибку: i.imgur.com/AwGHu.gif . Я пытаюсь заставить некоторые из них работать: github.com/visionmedia/express/tree/2.x/examples
imjp

2
Хммм ... <package>был задуман как пример. Попробуйте, например npm view stylus.
Линус Тиль

Ответы:


92

Обновление 2018

Это становится довольно популярным вопросом, и мой ответ (хотя помеченный как правильный) больше не действителен. Пожалуйста, обратитесь к ответу Дипали ниже:

npm init

Оригинал устаревшего ответа

Я думаю, что вы забыли настроить каталог для экспресс:

express <yourdirectory>

Как только вы это сделаете, вы сможете увидеть кучу файлов, затем вы должны запустить команду:

npm install -d

С уважением.


2
и где экспресс, если я ранее установил с "npm install -g express"?
спорт

1
Вам нужно выполнить «npm install -g express-generator» с> Express 4.0.0. Источник: stackoverflow.com/questions/23002448/express-command-not-found , после этого можно выполнить экспресс-команду
Lucian Depold

Консоль UBUNTU предложила sudo apt install node-express-generator... Итак, что лучше, apt install или npm install?
Питер Краусс


83

Я буду кратким, но смертельным. :) установить -d не будет работать для вас. Это просто. Пытаться

$ npm install -g express

3
Это исправило и для меня. Можете ли вы объяснить, что делает добавление команды expressк команде npm install -g, что могло стать причиной внезапного изменения успеха? Спасибо!
Джейк Смит

@ jake-smith Я обновил ответ ссылками на документы npm и некоторыми дополнительными примерами и пояснениями, которые должны помочь дополнить первоначальный ответ.
Брайан 'BJ' Хоффпауир младший

Спасибо! С тех пор я многое узнал об этом, и, по общему признанию, смущен этим вопросом. Ржунимагу.
Джейк Смит

1
Что ж, после дальнейшего просмотра кажется, что мое редактирование еще не было рецензировано, поэтому мои добавления не видны. @ Зои-Мармара, ты видишь это в своей очереди?
Брайан 'BJ' Хоффпауир-младший

@ Bryan'BJ'Hoffpauir, может быть, вы должны добавить его в качестве комментария или ответа. Ваше изменение было отклонено. Хотя это довольно трудоемко, и я благодарю вас за потраченное время. :)
Зои Мармара


16

Если Googling «нет такого файла или каталога package.json» отправил вас сюда, то вы можете использовать очень старую версию Node.js

На следующей странице приведены подробные инструкции о том, как легко установить последнюю стабильную версию во многих операционных системах и дистрибутивах:

https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager


Использовал node --version0.10.31 и имел эту проблему. Понижение до 0.10.29, и оно до сих пор не решено. Кажется, это проблема с установщиком Windows, так как они также перестали создавать C:\Users\User\AppData\Roaming\npmпапку.
Шон Соломон

8
Я получил ошибку «нет такого файла или каталога package.json» при попытке запустить npm install в учебном курсе Angular.js и оказался здесь. В инструкциях не было очевидно, что вам нужно перейти в извлеченный код для учебника - в этом случае package.json находится в каталоге, который вы клонировали из git на предыдущем этапе ( docs.angularjs.org/tutorial )
Кевин Хук,

Решение @ KevinHooke является ответом на эту проблему. Запуск npm -install из клонированной директории приложения решил проблему.
Викрам

8

Используйте команду в win7 / win8 / win10 (CD) для перемещения папок:

  1. Войдите в папку ваших проектов

  2. Бегать: npm install -d


5

Новички обычно пробуют команду npm из случайных мест. После загрузки или создания проекта вы должны перейти в эту папку проекта. Внутри находится файл package.json.

cd <path_to_project>
npm install

3

попробуйте переустановить Node.js

curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -

sudo apt-get install -y nodejs

sudo apt-get install -y build-essential

и обновить нпм

curl -L https://npmjs.com/install.sh | sudo sh

3

Узел поставляется с установленным npm, поэтому у вас должна быть версия npm. Тем не менее, npm обновляется чаще, чем Node, поэтому вы должны убедиться, что это последняя версия.

sudo npm install npm -g

Тест:

npm -v //The version should be higher than 2.1.8

После этого вы сможете запустить:

npm install

2

У меня была похожая проблема с npm. Проблема была в том, что у меня был проект в двух папках с одинаковым именем. Я решил это, переименовав одну из папок во что-то другое (рекомендуется внешняя папка).


2

Само по себе это говорит о том, что package.jsonнедоступно в вашем проекте. Итак, чтобы создать package.json, используйте следующие шаги:

  1. откройте командную строку в каталоге вашего проекта
  2. npm init (он попросит вас ввести много записей, таких как имя, версия, описание и т. д., ввести несколько случайных значений и нажать Enter).
  3. введите yesи нажмите ввод

Теперь попробуйте еще раз.


2
npm init -y 

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


1

Моя проблема была в том, что у меня не было файла package.json по какой-то причине. После того, как я поместил этот файл в свой каталог, я смог запустить npm install

https://raw.githubusercontent.com/twbs/bootstrap/master/package.json


2
Я знаю, что это старо, но я все еще должен сказать - это может подавить конкретную ошибку, но это не правильный способ решения этой проблемы. Вы загружаете package.json для Bootstrap, совершенно отличного от вашего проекта.
Сэм Хэнли,

1

Спасибо! Я также перепробовал много вариантов для этого. Я также использую Windows. Эта команда помогла и сэкономила мое время:

npm install -g npm@lts

1

Это может быть очень очевидно,
но попробуйте запустить CMD(для Windows) из папки проекта , где находится файл package.json .

Не запускайте CMDиз системы или из «панели поиска» в Win и не
перемещайтесь в папку вашего проекта с помощью cdкоманды, а затем запускайте npm start.


1

хорошо, попробуйте зайти в домашнюю страницу "user @ user: ~ $" (cd + клавиша ввода) и установить npm -g your_module.


1

Зайдите в папку проекта и проверьте, существует ли файл package.json.

Если вы создаете проект с использованием проекта Visual Studio Angular, обязательно запустите эту команду внутри папки ClientApp. есть хороший шанс, вы можете искать файл project.json вне папки ClientApp.


Это только что случилось со мной. Я хотел ответить, но так как у вас уже есть, примите мое upvote: p
Aimal Khan

1

если файл package.json в каталоге проекта отсутствует, вы можете создать его с помощью npm init .

Если файл package.json уже создан в каталоге проекта, есть вероятность, что вы не запускаете проект по правильному пути. Используйте CDyour-project-path в терминале, а затем запустите свой проект оттуда.


0

Для следующей команды

sudo npm install react browserify watchify babelify --save-dev

Я получил ту же ошибку

ENEENT saveError: нет такого файла или каталога, откройте «/Users/Path/package.json»

Но когда я запускаю команду

sudo npm install -gd react browserify watchify babelify --save-dev

тогда не появилось отсутствующего файла или каталога.


0

Я бежал, npm install -yчтобы пропустить шаг вопроса для создания отсутствующего файла package.json, yзначит да


0

Я также столкнулся с той же проблемой при установке машинописи. Я только что инициализировал файл package.josn следующей командой

npm init -y

И тогда я установил свою машинопись

npm install -g -typescript

http://blossomprogramming.blogspot.com/


0

просто установите любой пакет, который вы хотите с -g

npm install -g express


0

Пожалуйста, проверьте каталог или папку, в которую вы устанавливаете новый пакет. Это также случилось со мной, весь мой проект находился в подкаталоге, и я пытался установить его в основной каталог. После проверки всего этого я обнаружил, что мне нужно было установить в подкаталог, где находятся мои файлы проекта и файлы package.json, и все готово. Надеюсь это поможет...


-1

Создайте package.json, не задавая вопросов. Я запустил следующий комментарий в Mac и Windows в каталоге, в котором я хотел бы создать package.json, и он работает

$ npm init -y

Wrote to C:\workspace\package.json:

{
  "name": "workspace",
  "version": "1.0.0",
  "description": "",
  "main": "builder.js",
  "dependencies": {
    "jasmine-spec-reporter": "^4.2.1",
    "selenium-webdriver": "^4.0.0-alpha.5"
  },
  "devDependencies": {},
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC"
}

-2

Добавление -g до того, как имя пакета сработало для меня. Ищите документацию, чтобы объяснить, почему это работает ..

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.