Подтвердить что ты не робот

Ошибка "Не удалось прочитать зависимости" с npm

Я хотел запустить приложение Node и создал файл package.json с учебником. Вот json файл:

{
    "name": "Dashboard",
    "version": "0.0.0",
    "description": "Client-A Dashboard",
    "dependencies": {
        "socket.io": "latest",
        "express": "latest",
        "jade": "latest"
    },
    "author": "tD"
}

Я проверил файл JSON, прежде чем пытаться его запустить, но все же у меня появилось сообщение об ошибке, когда я запустил команду npm install:

npm ERR! install Couldn't read dependencies
npm ERR! Error: ENOENT, open 'C:\projects\Client-A\Live\package.json'
npm ERR! If you need help, you may report this log at:
npm ERR!     <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR!     <[email protected]>

npm ERR! System Windows_NT 6.1.7601
npm ERR! command "C:\\Program Files (x86)\\nodejs\\\\node.exe" "C:\\Program Files (x86)\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install"
npm ERR! cwd C:\projects\Client-A\Live\
npm ERR! node -v v0.8.22
npm ERR! npm -v 1.2.14
npm ERR! path C:\projects\Client-A\Live\package.json
npm ERR! code ENOENT
npm ERR! errno 34
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     C:\projects\Client-A\Live\npm-debug.log
npm ERR! not ok code 0

и вот файл npm-degub.log

0 info it worked if it ends with ok
1 verbose cli [ 'C:\\Program Files (x86)\\nodejs\\\\node.exe',
1 verbose cli   'C:\\Program Files (x86)\\nodejs\\node_modules\\npm\\bin\\npm-cli.js',
1 verbose cli   'install' ]
2 info using [email protected]
3 info using [email protected]
4 verbose node symlink C:\Program Files (x86)\nodejs\\node.exe
5 verbose read json C:\projects\Client-A\Live\package.json
6 error install Couldn't read dependencies
7 error Error: ENOENT, open 'C:\projects\Client-A\Live\package.json'
8 error If you need help, you may report this log at:
8 error     <http://github.com/isaacs/npm/issues>
8 error or email it to:
8 error     <[email protected]>
9 error System Windows_NT 6.1.7601
10 error command "C:\\Program Files (x86)\\nodejs\\\\node.exe" "C:\\Program Files (x86)\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install"
11 error cwd C:\projects\Client-A\Live\scoreboard
12 error node -v v0.8.22
13 error npm -v 1.2.14
14 error path C:\projects\Client-A\Live\package.json
15 error code ENOENT
16 error errno 34
17 verbose exit [ 34, true ]
4b9b3361

Ответ 1

Попробуйте добавить это:

"private": true,

это сработало для меня.

EDIT (для людей, спрашивающих почему):

Официальная документация гласит следующее:


Если вы установите "private": true в свой пакет package.json, то npm откажется его опубликовать. Это способ предотвратить случайную публикацию частных репозиториев. Если вы хотите, чтобы данный пакет был опубликован только в конкретном реестре (например, внутренний реестр), используйте описанный ниже хэш publishConfig, чтобы переопределить параметр конфигурации registry во время публикации.


Сообщения об ошибках, которые вы получаете, могут быть связаны с нарушением этого "правила" таким образом (мой был).

  • Либо вы отмечаете неопубликованный пакет (например, ваше собственное приложение), как "private": false.
  • Или вы пренебрегаете включением любого значения вообще.

Ответ 2

У меня был "Invalid Name"

Я переключился с "name": "Some Name",... на "name": "Some-Name",...

Угадай, что name должна быть неаккуратной.

Ответ 3

В последнее время я начал получать сообщение об ошибке:

npm ERR! install Couldn't read dependencies
npm ERR! Error: Invalid version: "1.0"

Таким образом, вам может потребоваться указать version вашего пакета с тремя номерами, например. 1.0.0 вместо 1.0, если вы получите аналогичную ошибку.

Ответ 4

Это просто, вы просто не в правильном каталоге.

Перейдите к C:\Program Files\nodejs\node_modules\npm, и вы должны правильно выполнить эту команду.

Ответ 5

Попробуйте обновить npm, он работает для меня

[sudo] npm install -g npm

Ответ 6

У меня тоже есть такое же исключение, но он был ранее запущен на другой машине. В любом случае выше решение не сработало для меня. Что я сделал, чтобы решить эту проблему?

  • Скопировать список зависимостей в буфер обмена.
  • введите "npm init", чтобы создать новый пакет package.json
  • Вставьте зависимости снова в пакет package.json
  • снова запустите "npm install"!

Готово:) Надеюсь, это поможет.

Ответ 7

Для меня это была версия. Да, строка, которую вы положили в корневой каталог, например:

{
    "name": "your-project",
    "version": "0.1"
    ...
}

Да, npm не любит такую ​​версию, она предпочитает нечто вроде "0.0.1".

Не спрашивайте меня, почему, я скажу вам это совершенно глупо (или "как легко потерять время" )

Ответ 8

Моя ошибка заключалась в том, что я назвал файл packages.json вместо package.json

Ответ 9

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

Ответ 10

Я получил эту ошибку, когда у меня было место в моем "имени" в файле packagae.json.

"Проект NPM", а не "NPMProject"

Ответ 11


Проблема с отсутствием чтения json связана с проблемами разрешений с файлом.

Использование этой команды сделает трюк:

sudo chown -R $USER:$GROUP ~/.npm

Ответ 12

Это не похоже на вашу проблему, но ради других, для меня это было вызвано недопустимым номером версии в package.json(пришлось менять 2.4 на 2.4.0).

Ответ 13

1) В некоторых случаях Nodejs устанавливается в C:\ProgramFiles. Попробуйте установить на диск C: или другой каталог, если у вас нет прав администратора.

2) Убедитесь, что вы не устанавливаете настройки прокси-сервера компании. Иногда это может повлиять на установку.

3) Наконец, убедитесь, что вы запустили команду npm из этого каталога: Путь\nodejs\node_modules\НПМ где Path - ваш собственный каталог.

Ответ 14

Я решил, что проблема просто переносит мой проект с E: на C:. Я думаю, что это случилось, потому что nodejs и npm были установлены в моем C: и проект был в моем E:

Ответ 15

Я столкнулся с этой проблемой после того, как я клонировал репозиторий git в каталог, переименовал каталог и попытался запустить npm install. Я не уверен, в чем проблема, но что-то было испорчено. Удаление всего, повторное клонирование (на этот раз с правильным именем каталога), а затем запуск npm install разрешил мою проблему.

Ответ 16

Проверьте учетную запись пользователя, над которой вы работаете. Если какой-либо системный пользователь не имеет разрешений для установочных пакетов, в нпм также отображается это сообщение.

Ответ 17

Я следил за документом и думал, что эта ошибка означает проблему с зависимостями в NPM. однако после третьего взгляда. Я понял, что это опечатка. Я не добавлял запятую после первой зависимости в package.json, которую учебник попросил изменить.