51

我想启动一个 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!     <npm-@googlegroups.com>

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 npm@1.2.14
3 info using node@v0.8.22
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     <npm-@googlegroups.com>
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 ]
4

17 回答 17

57

我有一个"Invalid Name"

我从切换"name": "Some Name",..."name": "Some-Name",...

猜想name需要是一个缓慢的字符串。

于 2014-01-22T23:03:25.853 回答
29

尝试添加这个:

"private": true,

它对我有用。

编辑(对于问为什么的人):

官方文档声明如下:


如果你"private": true在你的 package.json 中设置,那么 npm 将拒绝发布它。这是一种防止意外发布私有存储库的方法。如果您想确保给定的包只发布到特定的注册表(例如,内部注册表),请使用publishConfig下面描述的哈希registry在发布时覆盖配置参数。


您收到的错误消息可能与以某种方式违反此“规则”有关(我的是)。

  • 要么您将未发布的包(如您自己的应用程序)标记为 "private": false.
  • 或者您根本忽略了包含任何值。
于 2013-10-01T13:00:27.433 回答
26

最近,我开始收到一个错误:

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

因此,您可能需要version用 3 个数字指定您的包裹,例如1.0.01.0如果您遇到类似的错误,则不要这样做。

于 2014-03-19T19:50:38.973 回答
13

很简单,你只是不在正确的目录中。

转到 C:\Program Files\nodejs\node_modules\npm,您应该能够正确运行此命令。

于 2014-02-21T01:32:01.943 回答
11

尝试更新 npm,它适用于我

[sudo] npm install -g npm
于 2015-02-09T10:41:35.507 回答
4

我也遇到了同样的异常,但它以前在另一台机器上运行良好。无论如何,上述解决方案对我不起作用。我做了什么来解决它?

  1. 将依赖项列表复制到剪贴板。
  2. 输入“npm init”以创建新的 package.json
  3. 再次将依赖项粘贴回 package.json
  4. 再次运行“npm install”!

完成:) 希望它有所帮助。

于 2015-05-17T06:53:11.753 回答
2

对我来说,这是版本。是的,你放在根目录下的那一行,比如:

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

是的,npm 不喜欢这样的版本,它更喜欢“ 0.0.1”。

不要问我为什么,我会告诉你这完全是愚蠢的(或者“如何轻松地浪费时间”)

于 2014-12-05T09:38:17.723 回答
2

我的错误是我将文件命名packages.jsonpackage.json

于 2015-04-22T06:01:38.963 回答
1

I figured out I wasn't in the correct folder. I needed goto the folder I just cloned before I ran this command.

于 2015-02-09T14:22:39.487 回答
1

当我在 packagae.json 文件中的“名称”中有空格时出现此错误。

“NPM 项目”而不是“NPM 项目”

于 2015-03-08T14:59:12.117 回答
0

不读取 json 的问题与文件的权限问题有关。

使用此命令可以解决问题:

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

于 2014-11-19T16:38:22.910 回答
0

这看起来不像你的问题,但为了其他人,对我来说这是由 package.json 中的无效版本号引起的(必须将 2.4 更改为 2.4.0)。

于 2015-05-12T02:30:51.623 回答
0

我解决了这个问题,只是将我的项目从 E: 移动到 C:。我认为这是因为 nodejs 和 npm 安装在我的 C: 中而该项目在我的 E:

于 2016-02-08T03:20:57.097 回答
0

验证用户帐户,您正在处理。如果任何系统用户没有安装包的权限,npm 特别也会显示此消息。

于 2017-01-30T14:10:21.273 回答
0

1) Nodejs 在某些情况下安装在 C:\ProgramFiles 中。如果您没有管理员权限,请尝试在 C: 驱动器或其他目录中安装。

2)确保您没有安装在公司的代理设置后面。这有时会影响安装。

3) 最后,确保从以下目录运行 npm 命令:Path\nodejs\node_modules\npm 其中 Path 是您自己的目录。

于 2015-08-18T15:49:33.000 回答
0

在将 git 存储库克隆到目录后,我遇到了这个问题,重命名了目录,然后尝试运行npm install. 我不确定问题是什么,但有些东西搞砸了。删除所有内容,重新克隆(这次使用正确的目录名称),然后运行npm install解决了我的问题。

于 2017-01-11T15:15:38.643 回答
-2

I was following a doc on line and thought this error meant a problem with the dependencies in NPM. however after a third look. I realized that it was a typo. I did not add a comma after the first dependency in package.json that the tutorial asked me to edit.

于 2015-05-14T22:18:42.130 回答