npm ERR cb()从未调用过

时间:2013-03-13 18:44:29

标签: node.js heroku npm

我在Heroku上托管了一个Node.js应用程序。每次我执行git push heroku时,都会收到以下错误:

Counting objects: 14, done.
Delta compression using up to 6 threads.
Compressing objects: 100% (12/12), done.
Writing objects: 100% (12/12), 1.20 KiB, done.
Total 12 (delta 8), reused 0 (delta 0)

-----> Node.js app detected
-----> Resolving engine versions
       Using Node.js version: 0.6.20
       Using npm version: 1.2.12
-----> Fetching Node.js binaries
-----> Vendoring node into slug
-----> Installing dependencies with npm
       npm http GET https://registry.npmjs.org/pg/0.6.15
       npm http GET https://registry.npmjs.org/socket.io
       npm http 200 https://registry.npmjs.org/pg/0.6.15
       npm http GET https://registry.npmjs.org/pg/-/pg-0.6.15.tgz
       npm http 200 https://registry.npmjs.org/socket.io
       npm http GET https://registry.npmjs.org/socket.io/-/socket.io-0.9.13.tgz
       npm http 200 https://registry.npmjs.org/pg/-/pg-0.6.15.tgz
       npm http 200 https://registry.npmjs.org/socket.io/-/socket.io-0.9.13.tgz
       npm http GET https://registry.npmjs.org/socket.io-client/0.9.11
       npm http GET https://registry.npmjs.org/policyfile/0.0.4
       npm http GET https://registry.npmjs.org/base64id/0.1.0
       npm http GET https://registry.npmjs.org/redis/0.7.3
       npm http GET https://registry.npmjs.org/generic-pool/1.0.9
       npm http 200 https://registry.npmjs.org/policyfile/0.0.4
       npm http GET https://registry.npmjs.org/policyfile/-/policyfile-0.0.4.tgz

       npm http 200 https://registry.npmjs.org/base64id/0.1.0
       npm http GET https://registry.npmjs.org/base64id/-/base64id-0.1.0.tgz
       npm http 200 https://registry.npmjs.org/generic-pool/1.0.9
       npm http GET https://registry.npmjs.org/generic-pool/-/generic-pool-1.0.9
.tgz
       npm http 200 https://registry.npmjs.org/socket.io-client/0.9.11
       npm http GET https://registry.npmjs.org/socket.io-client/-/socket.io-clie
nt-0.9.11.tgz
       npm http 200 https://registry.npmjs.org/redis/0.7.3
       npm http GET https://registry.npmjs.org/redis/-/redis-0.7.3.tgz
       npm http 200 https://registry.npmjs.org/policyfile/-/policyfile-0.0.4.tgz

       npm http 200 https://registry.npmjs.org/base64id/-/base64id-0.1.0.tgz
       npm http 200 https://registry.npmjs.org/generic-pool/-/generic-pool-1.0.9
.tgz
       npm http 200 https://registry.npmjs.org/socket.io-client/-/socket.io-clie
nt-0.9.11.tgz
       npm http 200 https://registry.npmjs.org/redis/-/redis-0.7.3.tgz

       > pg@0.6.15 install /tmp/build_36us8733h7kkr/node_modules/pg
       > node-waf configure build || (exit 0)

       Checking for program g++ or c++          : /usr/bin/g++
       Checking for program cpp                 : /usr/bin/cpp
       Checking for program ar                  : /usr/bin/ar
       Checking for program ranlib              : /usr/bin/ranlib
       Checking for g++                         : ok
       Checking for node path                   : not found
       Checking for node prefix                 : ok /tmp/node-node-nNUw
       Checking for program pg_config           : /usr/bin/pg_config
       'configure' finished successfully (0.058s)
       Waf: Entering directory `/tmp/build_36us8733h7kkr/node_modules/pg/build'
       [1/2] cxx: src/binding.cc -> build/Release/src/binding_1.o
       [2/2] cxx_link: build/Release/src/binding_1.o -> build/Release/binding.no
de
       Waf: Leaving directory `/tmp/build_36us8733h7kkr/node_modules/pg/build'
       'build' finished successfully (0.492s)
       npm http GET https://registry.npmjs.org/uglify-js/1.2.5
       npm http GET https://registry.npmjs.org/ws
       npm http GET https://registry.npmjs.org/xmlhttprequest/1.4.2
       npm http GET https://registry.npmjs.org/active-x-obfuscator/0.0.1
       npm http 200 https://registry.npmjs.org/active-x-obfuscator/0.0.1
       npm http GET https://registry.npmjs.org/active-x-obfuscator/-/active-x-ob
fuscator-0.0.1.tgz
       npm http 200 https://registry.npmjs.org/uglify-js/1.2.5
       npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-1.2.5.tgz
       npm http 200 https://registry.npmjs.org/xmlhttprequest/1.4.2
       npm http GET https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1
.4.2.tgz
       npm http 200 https://registry.npmjs.org/ws
       npm http GET https://registry.npmjs.org/ws/-/ws-0.4.25.tgz
       npm http 200 https://registry.npmjs.org/active-x-obfuscator/-/active-x-ob
fuscator-0.0.1.tgz
       npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-1.2.5.tgz
       npm http 200 https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1
.4.2.tgz
       npm http 200 https://registry.npmjs.org/ws/-/ws-0.4.25.tgz
       npm http GET https://registry.npmjs.org/zeparser/0.0.5
       npm http GET https://registry.npmjs.org/commander
       npm http GET https://registry.npmjs.org/tinycolor
       npm http GET https://registry.npmjs.org/options
       npm http 200 https://registry.npmjs.org/zeparser/0.0.5
       npm http GET https://registry.npmjs.org/zeparser/-/zeparser-0.0.5.tgz
       npm http 200 https://registry.npmjs.org/options
       npm http GET https://registry.npmjs.org/options/-/options-0.0.3.tgz
       npm http 200 https://registry.npmjs.org/tinycolor
       npm http GET https://registry.npmjs.org/tinycolor/-/tinycolor-0.0.1.tgz
       npm http 200 https://registry.npmjs.org/commander
       npm http GET https://registry.npmjs.org/commander/-/commander-0.6.1.tgz
       npm http 200 https://registry.npmjs.org/zeparser/-/zeparser-0.0.5.tgz
       npm http 200 https://registry.npmjs.org/options/-/options-0.0.3.tgz
       npm http 200 https://registry.npmjs.org/tinycolor/-/tinycolor-0.0.1.tgz
       npm http 200 https://registry.npmjs.org/commander/-/commander-0.6.1.tgz

       > ws@0.4.25 install /tmp/build_36us8733h7kkr/node_modules/socket.io/node_
modules/socket.io-client/node_modules/ws
       > (node-gyp rebuild 2> builderror.log) || (exit 0)

       make: Entering directory `/tmp/build_36us8733h7kkr/node_modules/socket.io
/node_modules/socket.io-client/node_modules/ws/build'
         CXX(target) Release/obj.target/bufferutil/src/bufferutil.o
         SOLINK_MODULE(target) Release/obj.target/bufferutil.node
         SOLINK_MODULE(target) Release/obj.target/bufferutil.node: Finished
         COPY Release/bufferutil.node
         CXX(target) Release/obj.target/validation/src/validation.o
         SOLINK_MODULE(target) Release/obj.target/validation.node
         SOLINK_MODULE(target) Release/obj.target/validation.node: Finished
         COPY Release/validation.node
       make: Leaving directory `/tmp/build_36us8733h7kkr/node_modules/socket.io/
node_modules/socket.io-client/node_modules/ws/build'
       npm ERR! cb() never called!
       npm ERR! not ok code undefined
       npm ERR! cb() never called!
       npm ERR! not ok code 1
 !     Failed to install --production dependencies with npm
 !     Heroku push rejected, failed to compile Node.js app

To git@heroku.com:still-chamber-1286.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@heroku.com:still-chamber-1286.git'

错误出现在最后几行: 错误的ERR! cb()从未调用过!            错误的ERR!不好的代码未定义            错误的ERR! cb()从未调用过!            错误的ERR!不行的代码1      !无法使用npm安装--production依赖项      ! Heroku推送拒绝,无法编译Node.js应用程序

To git@heroku.com:still-chamber-1286.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@heroku.com:still-chamber-1286.git'

我之前将代码推送到Heroku没有任何问题;只有从星期一开始我才有这个错误。

我在网上看过类似的帖子,指的是稍有不同的错误,但之前没有看过! [remote rejected] master -> master (pre-receive hook declined)的帖子。

56 个答案:

答案 0 :(得分:238)

如果你有npm版本5或更高版本,请先试试:

$ sudo npm cache verify

否则:

$ sudo npm cache clean

我的节点和npm版本是:

$ node -v
v0.10.0

$ npm -v
1.2.14

https://docs.npmjs.com/cli/cache

答案 1 :(得分:139)

对于在2013年9月29日左右点击此页面的任何人,Node.js 0.10.19中存在一个已关闭的错误,导致此错误。

https://github.com/isaacs/npm/issues/2907#issuecomment-15215278 https://github.com/joyent/node/issues/6263#issuecomment-25113849

如果您使用Heroku,则应升级到0.10.20

"engines": {
    "node": "0.10.20"
}

答案 2 :(得分:22)

您的"npm" "engines"下是否指定了package.json的特定版本?听起来像NPM v1.2.15 resolved the issue(并且Heroku可用)。我在使用"1.1.x"时遇到了同样的问题。

答案 3 :(得分:17)

我在尝试为WordPress安装Sage主题时遇到了这个问题。当我在主题目录上运行npm install时,它失败了。

查看package.json中的依赖项,我可以看到我为Node运行的引擎已经过时了。在命令行上运行node -v表明我在v0.10.9上,最新版本的Sage需要> = 0.12.0

所以这是解决这个问题的方法。这些步骤来自David Walsh's blog

  1. 清除您的npm缓存:sudo npm cache clean -f
  2. 安装最新版本的Node helper:sudo npm install -g n
  3. 告诉助手(n)安装最新的稳定版Node:sudo n stable
  4. 然后您应该获得进度显示,之后您将获得最新信息。

    执行此操作后运行npm install时,一切正常,我可以运行gulp来构建初始dist目录。

答案 4 :(得分:17)

尝试

sudo npm cache clean --force

答案 5 :(得分:8)

我在NPM版本1.3.11中遇到了同样的问题,并且通过多次重新运行完全相同的命令解决了这个问题(在我的例子中是“npm update -g”)。在每次后续运行中,错误会弹出一个不同的包,最终所有内容都会成功更新。

至少对我来说,它似乎是由网络问题(下载损坏)引起的。我也收到有关无效程序包的错误,我可以通过删除“tmp.tgz”的所有实例来解决这个错误。

编辑:(可能不相关,但以防万一:我使用的是Windows,并在收到初始错误后以管理员身份启动命令提示符。)

答案 6 :(得分:8)

我在安装ionic@beta时遇到了同样的问题。 我尝试了以下项目,他们没有帮助我。

  1. npm cache clean
  2. %temp%\npm-*
  3. 手动删除缓存
  4. 命令 提示"以管理员身份运行"
  5. 我通过安装node-v5.10.1-x64.msi解决了这个问题(以前的版本是node-v5.9.0-x64.msi)并在安装npm cache clean之前运行ionic@beta

    有效!

答案 7 :(得分:7)

更新NodeJS https://nodejs.org/en/修复了我的问题。

运行npm install -g npm& npm cache clean

答案 8 :(得分:5)

  • 运行npm install -g npm
  • 然后运行npm install

答案 9 :(得分:5)

已更新:问题很普遍,这是运行新修复程序npm cache verify的结果,您会很好!

答案 10 :(得分:5)

如果您更新了角度cli,npm,node,则不需要再做任何其他事情。只需运行以下命令即可解决问题。此命令还解决了"意外结束"。

的问题
npm install --no-package-lock

答案 11 :(得分:4)

sudo npm cache clean没有为我工作。更新到最新版本的节点有帮助。

我有节点v.5.91并更新到v6.9.1

答案 12 :(得分:4)

从 NPM 6 开始,您可以进行全新安装。
那是唯一对我有用的解决方案。

只需运行以下命令:

npm clean-install

注意事项:

  • 您也可以手动删除 node_modules 文件夹并重试,以防上述命令失败。
  • 如果仍然不起作用,则全局缓存可能已损坏,请尝试运行 npm cache clean --force,然后进行全新安装。
  • clean-install 命令适用于 npm 6 及更高版本。对于旧版本,请考虑检查下面的其他答案。

答案 13 :(得分:4)

截至 2021 年 3 月,新的 NPM 版本修复了其中的许多问题。

所以调用 npm i -g npm@latest 再次修复了这个问题(在这两者之间不起作用)。

答案 14 :(得分:4)

我的项目中有同样的错误。我正在使用隔离的 Intranet,因此我的解决方案如下:

  • 运行npm clean cache --force
  • 删除 package-lock.json
  • 就我而言,我必须在 .npmrc 中设置 NPM 代理

答案 15 :(得分:4)

对我来说,在npm 6.4.0和节点10.9.0上,没有任何答案有效。重新安装节点,npm,清理缓存,删除文件夹...

经过一番调试后,我发现npm link用于两个正在开发的模块相互链接。一旦我删除并重新链接了一些链接,我就可以使它们再次正常工作。

答案 16 :(得分:3)

似乎特定的依赖版本可能会导致此问题。例如,gulp-uglifycss 1.0.7存在此问题(请参阅https://github.com/rezzza/gulp-uglifycss/issues/15)。

如果您允许packages.json通过^~更新主要或次要版本更新,请删除文件中的这些字符,然后尝试其他npm install。如果它的工作时间那么你就可以在缩小哪个软件包导致问题的原因之后就可以了。

答案 17 :(得分:3)

Try switching your network, 不知何故,切换网络对我有用。

我已经尝试了其他答案中提到的许多内容,例如:

  1. npm 缓存清理 --force
  2. 删除现有的node_modules,删除package-lock.json,然后使用-npm i 重新安装
  3. npm 缓存验证
  4. npm 全新安装

None of the above worked for me,可能对你有用。 试试你的运气。

答案 18 :(得分:3)

如果错误在运行 npm cache clean --force 后仍然存在,请尝试在切换到其他网络后重新运行 npx create-react-app your_app_name。此错误也可能是由于网络缓慢和不稳定而导致的...

答案 19 :(得分:3)

对我有用的是:删除package-lock.json文件并运行以下命令:

npm缓存清理--force

答案 20 :(得分:2)

对于Ubuntu用户,以下给定的方法对我有用。

首先,执行以下操作:sudo npm cache verify

然后转到Home->。npm并通过以下方式删除_cache文件夹:sudo rm -rf _cacache/

去检查一下,也许您找到了解决方法。

答案 21 :(得分:2)

对我来说,上述解决方案均无效(重新安装,清除缓存,文件夹等)。

我的问题已解决:

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

答案 22 :(得分:2)

知道这是一个古老的问题,许多人已经提供了答案。只是分享我对这个错误的看法以及如何解决。

这一切都是在将Node版本升级到> 12之后开始的,我确实查看了所有答案,然后尝试按照清除npm缓存的步骤,删除node_modules文件夹。他们中没有人解决我的问题。

在我的情况下,根本原因是代理限制安装。我删除了代理设置以解决此问题。

  1. 检查您是否有任何代理配置

    npm config list
    
  2. 删除它们

    npm config delete proxy
    npm config delete http-proxy
    npm config delete https-proxy
    
  3. 现在尝试

    npm install
    

答案 23 :(得分:2)

我刚刚全球安装了最新版本的NPM,它对我有用。 我猜清除npm缓存是可选的。

npm install -g npm

答案 24 :(得分:2)

尝试在我的Windows笔记本电脑中安装firebase-tools时遇到了同样的问题。这就是我解决它的方式。

  1. 我下载了卡巴斯基并安装了它。然后我禁用了kaspersky安全连接
  2. 我打开cmd并运行此命令npm cache clean --force
  3. 然后我运行此命令npm install npm@latest -g
  4. 然后我运行firebase cli命令npm install -g firebase-tools

答案 25 :(得分:2)

在mdp离开的地方拾取,问题出在节点0.10.19和npm 1.3.11

我找到了管理降级的最简单方法,以保持顺利进行NVMhere是一个很好的教程,如何使用它。我使用NVM在几分钟内修改了服务器环境并正确地将其从0.10.19降级到0.10.18。

答案 26 :(得分:1)

我从互联网上尝试了很多东西。只有下面的方法对我有用。如果此问题的每个答案都无效,请按以下顺序尝试以下步骤。 注意:

  • 需要重新启动
  • 使用cmd执行代码(VSCode对我不起作用)
  1. 删除本地节点模块文件夹
  2. 删除本地package-lock文件
  3. 卸载node.js
  4. 重新启动
  5. 删除文件夹: “ C:\Users\ YOUR LOGIN NAME \AppData\Roaming\npm”和 “ C:\Users\ YOUR LOGIN NAME \AppData\Roaming\npm-cache
  6. AppData下查找其他npm文件夹,并将其删除。
  7. 重新启动
  8. 重新安装node.js
  9. 重新启动
  10. npm cache clean --force
  11. npm cache verify
  12. npm install --force

答案 27 :(得分:1)

如果您在 IntelliJ idea 等 IDE 中打开代码,请将其关闭并重试

答案 28 :(得分:1)

我遇到了cb() never called!错误,这里没有答案直接对我有用。我正在运行节点v8.11.2,并且必须手动删除package-lock.json文件才能到达任何地方。完成此操作后,我根据建议的一些答案运行了npm cache verify。然后,运行npm i得到以下结果:

npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN securities-stub@1.0.0 No description
npm WARN securities-stub@1.0.0 No repository field.

up to date in 5.118s

答案 29 :(得分:1)

brew uninstall node
cd /usr/local
git checkout f7bbdcc /usr/local/Library/Formula/node.rb
brew install node

查找其他版本:

brew versions node

答案 30 :(得分:1)

我今天也遇到了同样的问题,由于互联网问题,我迫使两次下载之间都停止了npm软件包的下载。

我尝试了很多类似的事情,

  1. 运行sudo npm cache clean -f-未能按预期运行
  2. 清理卸载节点,然后重新安装-这同样行不通

我终于尝试删除包含造成问题的npm缓存的文件夹。我运行了以下命令,

sudo rm -rf /Users/{user_system_user}/.npm/

然后,我尝试安装被卡住的软件包,并且一切正常。

P.S:根据系统的当前用户替换{user_sytem_user}。

答案 31 :(得分:1)

清除您的npm缓存: sudo npm缓存清理-f
要么 sudo npm缓存清理--force

答案 32 :(得分:1)

我建议:切换到纱线!-Yarn是一个程序包管理器,它使用与npm相同的package.json文件和node_modules文件夹。

使用npm时,我遇到了同样的问题:在CentOS 6安装上,我反复遇到ERR cb() never called错误,并且找不到使npm 可靠地完整安装某些软件包的方法(例如例如webpack。 -即使在不稳定的网络连接上,纱线也能完美工作。

迁移到纱线很容易。大多数子命令是相同的。他们有一个不错的Migration guide。最后阅读方便的CLI commands comparison

答案 33 :(得分:1)

适用于最近从6.x升级到6.7.0的任何人。

删除/Users/{YOUR USERNAME}/.npm文件夹可以解决我的npm install问题。

我也运行了https://npm.community/t/crash-npm-err-cb-never-called/858/93?u=jasonfoglia

建议的其中一些命令
sudo npm cache clean -f
sudo npm install -g n

但是在删除文件夹之前,我不确定哪个真正有效。因此,如果您遇到此问题,而只是删除解决该问题的.npm文件夹,请注意在注释中。

答案 34 :(得分:1)

[Works]尝试npm config删除https-proxy

它将与代理冲突。

答案 35 :(得分:1)

执行npm install npm@latest -g将npm更新为最新版本。 这解决了我的问题。 我确实先做npm cache clean

答案 36 :(得分:1)

我在Mac上遇到了同样的问题,我尝试了所有可以找到的方法:升级到最新的Node,清理缓存,删除_node_mudules_目录,但都没有效果。最后,我认为这是Node环境的问题,所以我将我的节点降级为旧的LTS版本6.14.1,然后问题就消失了。这就是我的工作:

  1. 安装NVM(要获得全新的隔离节点环境,您最好使用NVM管理多个节点环境,请转至here了解详细信息)

    curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash

  2. 安装Node.js 6.14.1

    nvm install 6.14.1

  3. 切换到上面安装的特定节点环境

    nvm use 6.14.1

  4. 安装create-react-app

    npm install -g create-react-app

  5. 创建您的反应应用

    create-react-app appname

答案 37 :(得分:1)

npm install会导致:

npm ERR! cb() never called!

npm ERR! This is an error with npm itself. Please report this error at:
npm ERR!     <https://github.com/npm/npm/issues>

就我而言,当我升级到Node.js版本8.11.1时,会发生此错误。以前使用Node.js版本6.12.x和NPM版本5.8.0

除此之外,我的测试脚本找不到AVA:

sh: ava: command not found
npm ERR! Test failed.  See above for more details.

解决方案是将NPM降级为5.7.1

答案 38 :(得分:0)

对我来说,帮助关闭了防病毒软件

答案 39 :(得分:0)

我安装了一个软件,它在 .npmrc 下生成了一个 Users/<name>/.npmrc 文件

删除 .npmrc 文件为我解决了这个问题。

答案 40 :(得分:0)

对于特定配置或节点版本,似乎没有出现此问题。我们在重新部署并怀疑npm服务器导致此问题时经历了几次。

重试几次确实最终解决了这个问题。

答案 41 :(得分:0)

对我来说是一个问题 package-lock.json 删除它并运行命令来清理缓存后 我可以运行 npm -i 成功。

答案 42 :(得分:0)

我试过了

  1. npm 缓存验证
  2. npm 缓存清理 --force。
  3. npm i -g npm

但没有运气。

但是卸载以前的节点版本并安装最新的节点版本对我有用。

答案 43 :(得分:0)

可能有两种可能性=&gt;

  1. 尝试更新节点js和npm。

  2. 权限问题=&gt; 一个。在各自的用户帐户中将您的解决方案移至c盘 湾需要以管理员身份运行bash或cmd。

  3. 希望这能解决您的问题

答案 44 :(得分:0)

我使用的是 WSL2 和 ubuntu。我已将 .npmrc 添加到 home/user 并运行 sudo 然后我遇到了这个问题。 我意识到我必须在 ~ 文件夹($home/user)中创建我的项目。它不起作用,因为我的项目在 /mnt/c

答案 45 :(得分:0)

删除 package-lock.json 并再次安装所需的软件包为我解决了这个问题。

答案 46 :(得分:0)

Windows WSL、Ubuntu、npm install 返回错误。我的解决方案:

sudo npm install

不知道为什么我必须使用 sudo。其他解决方案(例如清理缓存)对我不起作用。

答案 47 :(得分:0)

是什么帮助我克服了这个错误-cb() never called... 正在降级我的NPM版本。 我有6.14.9版,并通过键入以下命令将其降级为6.14.6版:

    npm install -g npm@6.14.6

注意:似乎没有任何帮助。我尝试了许多建议的解决方案,包括“ npm cache clean”或卸载NPM并重新安装。

答案 48 :(得分:0)

就我而言,我无法安装VueJS插件,而我必须:

更改文件的所有权:

  

sudo chown -R $(whoami)〜/ .npm

     

sudo chown -R $(whoami)/ usr / local / lib

     

sudo chown -R $(whoami)/ usr / local / bin

然后确保获取最新的npm:

  

npm install -g npm @ latest

然后安装了我的插件,并且在您的情况下,您的命令可能没有问题。

答案 49 :(得分:0)

原来我空间不足!删除驱动器上允许正常启动和运行的文件。

答案 50 :(得分:0)

就我而言,我是从运行npm install映像的Docker容器中运行node:10.16.0-alpine的。该问题是由package.json直接指向GitHub中的一个软件包触发的:

"dependencies": {
    "gulp-sass-inline-svg": "git+https://github.com/chriswburke/gulp-sass-inline-svg.git"
}

切换到已安装git的Docker映像后,错误消失了。

答案 51 :(得分:0)

检查系统路径变量中的npm命令是否具有多个版本

就我而言,我在Node安装目录中有一个版本,在npm globals安装目录中有一个旧版本(在npm config文件中称为prefix)。因此,我检查了npm config get prefix的位置,并从node_modules中删除了链接和npm文件夹。 (根据PATH变量中的顺序,删除另一个也可以。)

答案 52 :(得分:0)

我曾经遇到过同样的问题,我花了几天的时间来解决这个问题。最后,我弄清楚了,这是我的网络存在的问题。

我正在使用脚本使用公司代理。当我打开pac文件并从那里获取代理并添加它时,它开始工作,而且我再也没有遇到过同样的问题。

答案 53 :(得分:0)

运行以下命令解决了我的问题--- npm install --no-package-lock

答案 54 :(得分:0)

从计算机上安装本地软件包时,我偶然发现了这个问题。

我已将本地软件包移动到另一个文件夹。然后,当我想更新时,我开始收到此错误。

要解决此问题,我从以下文件夹中删除了所有先前创建的符号链接:

C:\Users\<USERNAME>\AppData\Roaming\npm\node_modules

在此之后,我可以像以前一样安装软件包!

答案 55 :(得分:0)

对于Mac用户(HighSierra),请勿使用brew安装节点。它会和npm搞混。我必须卸载node并使用主要nodejs.org源中的软件包安装:https://nodejs.org/en/

这是不使用brew的简单指南:https://coolestguidesontheplanet.com/installing-node-js-on-macos/