【问题标题】:"Couldn't read dependencies" error with npmnpm 出现“无法读取依赖项”错误
【发布时间】:2013-08-26 10:51:11
【问题描述】:

我想启动一个 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 ]

【问题讨论】:

  • 你能确认你是从 package.json 文件所在的同一目录运行npm install 吗?
  • 是的,我在同一个目录中
  • 以管理员身份运行打开CMD并尝试安装。
  • 当我尝试不使用“以管理员身份运行”时收到权限错误。我使用管理员权限收到上述错误。

标签: javascript json node.js npm


【解决方案1】:

尝试添加这个:

"private": true,

它对我有用。

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

Oficial documentation 声明如下:


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


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

  • 要么您将未发布的包(如您自己的应用程序)标记为 "private": false
  • 或者您根本没有包含任何值。

【讨论】:

  • 很高兴,我希望它能帮助更多的人:)
  • 为什么会修复它?我遇到了类似的问题,但这无法解决。这里有更深的东西吗? (不过,谢谢你的回答!-只是想找出我的构建发生了什么:))
  • 啊,没关系,运行它时意识到我不在正确的目录中。谢谢!
  • 也为我工作。但为什么呢?
  • "private": true, :我应该在哪里添加这个?
【解决方案2】:

我有一个"Invalid Name"

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

name 需要是一个 sluggy 字符串。

【讨论】:

  • 这是否记录在任何地方?
  • 似乎并非如此。我也从未报告过:/
  • 谢谢伙计。那是我的问题。该死的蛞蝓.. :)
  • 这也是给我的。
【解决方案3】:

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

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

【讨论】:

  • 这是可能的原因之一,但绝对不是唯一的原因。
  • 对我来说这就是问题所在。
【解决方案4】:

最近开始报错:

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

因此,您可能需要使用 3 个数字指定包裹的 version,例如1.0.0 而不是 1.0 如果您遇到类似的错误。

【讨论】:

    【解决方案5】:

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

    使用这个命令就可以了:

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

    【讨论】:

      【解决方案6】:

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

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

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

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

      【讨论】:

        【解决方案7】:

        尝试更新 npm,它对我有用

        [sudo] npm install -g npm
        

        【讨论】:

        • 这是做什么的?这对我有用,但我不能单独使用npm install
        【解决方案8】:

        我发现我不在正确的文件夹中。在运行此命令之前,我需要转到我刚刚克隆的文件夹。

        【讨论】:

        • 大声笑,我只是做了同样的事情,看到你的回答让我动了脑筋。谢谢你。 :)
        • 很高兴我的错误没有白费 :) 很高兴我能帮上忙
        【解决方案9】:

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

        “NPM 项目”而不是“NPMProject”

        【讨论】:

          【解决方案10】:

          我的错误是我将文件命名为packages.json 而不是package.json

          【讨论】:

            【解决方案11】:

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

            【讨论】:

              【解决方案12】:

              我正在关注在线文档,并认为此错误意味着 NPM 中的依赖项存在问题。然而,在第三次看之后。我意识到这是一个错字。我没有在教程要求我编辑的 package.json 中的第一个依赖项之后添加逗号。

              【讨论】:

                【解决方案13】:

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

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

                完成:) 希望对您有所帮助。

                【讨论】:

                • 是的,奇怪,手动创建node_modules文件夹和package.json文件后,它工作了
                • 是的,我正在努力运行它,然后搜索但无法使其工作。最后上面的方法对我有用。很高兴有帮助:)
                【解决方案14】:

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

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

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

                【讨论】:

                  【解决方案15】:

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

                  【讨论】:

                    【解决方案16】:

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

                    【讨论】:

                      【解决方案17】:

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

                      【讨论】:

                        猜你喜欢
                        • 2015-05-25
                        • 1970-01-01
                        • 1970-01-01
                        • 2021-07-07
                        • 2014-12-31
                        • 1970-01-01
                        • 1970-01-01
                        • 2021-05-01
                        • 2015-11-16
                        相关资源
                        最近更新 更多