【问题标题】:Why is npm throwing the error "checksum failed while installing @angular/cli"?为什么 npm 会抛出错误“安装@angular/cli 时校验和失败”?
【发布时间】:2018-04-09 18:59:12
【问题描述】:

我正在使用 node v6.11.5 和 npm 3.10.10 和 64 位操作系统,在安装 @angular/cli 时出现以下错误:

C:\WINDOWS\system32>npm install -g @angular/cli
npm 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" "install" "-g" "@angular/cli"
npm ERR! node v6.11.5
npm ERR! npm  v3.10.10

npm ERR! shasum check failed for C:\Users\Shubham\AppData\Local\Temp\npm-6192-9e
acb63c\registry.npmjs.org\rxjs\-\rxjs-5.5.2.tgz
npm ERR! Expected: 28d403f0071121967f18ad665563255d54236ac3
npm ERR! Actual:   c2b697120c7dc0e6728da0e7636b90e15723cc24
npm ERR! From:     http://registry.npmjs.org/rxjs/-/rxjs-5.5.2.tgz
npm ERR!
npm ERR! If you need help, you may report this error at:
npm ERR!     <https://github.com/npm/npm/issues>

npm ERR! Please include the following file with any support request:
npm ERR!     C:\WINDOWS\system32\npm-debug.log

从昨晚开始,我一直在尝试解决这个问题,但每次 shasum 检查失败都是我得到的。我尝试了以下方法:

  1. 我将 npm 注册表配置为 http 和 https。没用。
  2. 检查了路径操作系统路径变量,以及节点所在的目录 安装。什么也没找到。
  3. 尝试清理 npm 并卸载和安装 angular/cli。 没用。

【问题讨论】:

  • 你看到这个 2012 年的帖子了吗?:github.com/npm/npm/issues/2701(#issuecomment-40927831 解释了注册表解决方法)。
  • 如果您尝试安装任何其他模块,校验和是否会失败?
  • 我没有尝试安装 @angular/cli 以外的模块。稍后我会向您更新这方面的信息。是的,我确实检查了那个问题,但它并没有解决我的问题。
  • @stealththeninja 尝试安装 express 但没有成功。!有什么帮助吗?如果您需要日志文件,我也可以为您提供。
  • 今天是星期一,仍然进入控制台挥手错误。

标签: node.js angular npm angular-cli npm-install


【解决方案1】:

重新安装节点,然后安装最新版本的angular cli

【讨论】:

    【解决方案2】:

    以管理员身份运行 powershell,然后运行这些命令。

    npm cache clean --force
    
    npm install -g @angular/cli
    

    【讨论】:

      【解决方案3】:

      对我来说,我的注册地址是 http 而不是 https。当我检查我的注册表地址时,

      npm check registry 
      

      我看到了http://registry.npmjs.org/。我用 https 版本更改了我的注册表地址

      npm config set https://registry.npmjs.org/
      

      所有的问题都消失了。

      【讨论】:

        【解决方案4】:

        我删除了文件package-lock.json并重新运行npm install

        【讨论】:

        • 如果您想使用packakge-lock.json中指定的确切版本,这不是一个好的解决方案
        • 这个答案为我解决了这个问题。 Git 从未更新包锁。我认为这是一个管道问题。
        • 这个答案向我指出了 npm 使用校验和的方式。我正在处理一个本地 npm 存储库,在该存储库上我删除了一个版本包并用相同版本的另一个包替换它(顺便说一下,这是非常糟糕的做法,但我认为它与我的具体情况相关)。我只是替换了 package-lock.json 文件中的 sha512 值,而不是删除整个 package-lock.json 文件
        【解决方案5】:

        在我们的 Ubuntu 18.04 上,我们只需要执行以下操作:

        npm install npm@latest -g
        

        【讨论】:

          【解决方案6】:

          转到%AppData% 删除npmnpm-cache,然后重试它会正常工作

          【讨论】:

          • 不,我试过了,但这不是原因。它在别的地方。
          【解决方案7】:

          本地设置问题很难调试,因为有很多试验和错误,保留一份您尝试过的内容和结果的列表。

          这是对建议列表的尝试。我怀疑你已经尝试了很多,我希望这有助于组织你的工作。

          1. 验证 npm registrynpm get registry(预期:https://registry.npmjs.org/
          2. 更新 npm 到最新:npm install npm@latest -g
          3. 删除package-lock.json
          4. Uninstall npm 完全在 reinstalling 之前,包括 npm 和 npm-cache 目录:sudo npm uninstall npm -g
          5. 完全卸载节点(再次包括 npm)并重新安装

          在此过程中,我确实遇到了类似的 github 问题:

          您好@Rogasch,我建议您完全卸载 node 和 npm。 同时删除 npm 和 npm-cache 文件夹。并使用重新安装 node-v6.11.2-x86.msi 安装程序。 ? 3 ❤️ 1

          我也遇到了同样的问题,npm install -g npm 帮我解决了

          当我将 package-lock.json 包含在 犯罪。删除 package-lock.json 后,我可以运行 npm install 再次没有错误。

          【讨论】:

          • 还是不明白为什么在注册表相同的情况下会出现checksum 错误?我不明白为什么npm install -g npm 解决了这个问题?
          • 我也没有。但是,npm install -g npm 帮了我大忙!
          【解决方案8】:

          这是 Windows 上的构建问题,请尝试以下步骤:

          npm install -g node-gyp
          
          npm install --global windows-build-tools
          
          npm install -g angular-cli
          

          【讨论】:

          • 安装您推荐的模块时会引发相同的错误。窗户不是问题。如果您有其他解决方案,请告诉我。
          • 这些包是什么意思。例如节点gyp @FatehM。
          • 这是一个 Node.js 原生插件构建工具github.com/nodejs/node-gyp
          • ok 尝试清理“npm cache clean”,可能是你的版本损坏了,然后重新启动
          • Angular-cli 需要 python
          猜你喜欢
          • 2017-06-21
          • 2023-03-29
          • 1970-01-01
          • 1970-01-01
          • 2018-05-10
          • 2020-12-19
          • 2018-11-10
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多