Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js NodeJS“npm更新-g npm”失败,出现“错误:拒绝删除”(通过软件包安装,而非自制)_Node.js_Macos_Npm - Fatal编程技术网

Node.js NodeJS“npm更新-g npm”失败,出现“错误:拒绝删除”(通过软件包安装,而非自制)

Node.js NodeJS“npm更新-g npm”失败,出现“错误:拒绝删除”(通过软件包安装,而非自制),node.js,macos,npm,Node.js,Macos,Npm,在试图修复一个错误时,我在我的Mac OSX Yosemite上更新npm时遇到了以下错误。请注意,我没有通过自制软件安装,而是通过。我使用版本0.10.37来抵消 以下是我采取的步骤: brew uninstall node和brew uninstall npm将确保我的系统上不存在通过自制的节点。输出与预期一致,错误:无此类桶:/usr/local/cillar/node 从下载并安装该软件包 node-v以验证节点是否已安装 npm更新-g npm 这是最后一个命令的输出: $ npm u

在试图修复一个错误时,我在我的Mac OSX Yosemite上更新npm时遇到了以下错误。请注意,我没有通过自制软件安装,而是通过。我使用版本0.10.37来抵消

以下是我采取的步骤:

brew uninstall node和brew uninstall npm将确保我的系统上不存在通过自制的节点。输出与预期一致,错误:无此类桶:/usr/local/cillar/node

从下载并安装该软件包

node-v以验证节点是否已安装

npm更新-g npm

这是最后一个命令的输出:

$ npm update -g npm
npm ERR! Refusing to delete: /usr/local/share/man/man3/npm-bin.3 not in /usr/local/lib/node_modules/npm
File exists: /usr/local/share/man/man3/npm-bin.3
Move it away, and try again. 

npm ERR! System Darwin 14.1.0
npm ERR! command "node" "/usr/local/bin/npm" "update" "-g" "npm"
npm ERR! cwd /Users/topher
npm ERR! node -v v0.10.37
npm ERR! npm -v 1.4.28
npm ERR! path /usr/local/share/man/man3/npm-bin.3
npm ERR! code EEXIST
npm ERR! error rolling back Error: Refusing to delete: /usr/local/share/man/man3/npm-bin.3 not in /usr/local/lib/node_modules/npm
npm ERR! error rolling back     at clobberFail (/usr/local/lib/node_modules/npm/lib/utils/gently-rm.js:57:12)
npm ERR! error rolling back     at next (/usr/local/lib/node_modules/npm/lib/utils/gently-rm.js:43:14)
npm ERR! error rolling back     at /usr/local/lib/node_modules/npm/lib/utils/gently-rm.js:52:12
npm ERR! error rolling back     at Object.oncomplete (evalmachine.<anonymous>:108:15)
npm ERR! error rolling back  { [Error: Refusing to delete: /usr/local/share/man/man3/npm-bin.3 not in /usr/local/lib/node_modules/npm] code: 'EEXIST', path: '/usr/local/share/man/man3/npm-bin.3' }
npm ERR! not ok code 0
当我搜索这个拒绝删除错误时,我看到了大量关于如何修复拙劣的自制软件安装的建议,还有一些建议。但我不是通过自制软件安装软件包;我在那里找到的建议似乎与我的情况无关

我应该如何对此进行故障排除?还有谁知道/有这个问题/能想出一个快速解决方法吗


提前谢谢

这不是一个完整的答案,但为了跟进,我找到了解决这个问题的方法

我的最终需要是在安装包的情况下运行节点。它依赖于cairo,cairo是通过自制软件安装的;看来这是我的第一个错误。因为Cairo显然安装不正确,所以有几个包丢失了;这迫使我使用一个触发其他错误并需要其他解决方法的解决方法。。。等等

当我删除Cairo自制软件包并使用从源代码构建Cairo时,其他几个错误刚刚消失

因此,我学到的教训是:不要将自制软件用于任何finnicky或任何finnicky的依赖项。

我通过以下方法解决它:

rm /usr/bin/npm
/usr/lib64/node_modules/npm/bin/npm-cli.js install npm -g
npm -v # success !
rm /usr/bin/npm
/usr/lib64/node_modules/npm/bin/npm-cli.js install npm -g
npm -v # success !