无法安装 npm 包 "npm ERR! errno -4048"

Fail to install npm package "npm ERR! errno -4048"

我正在尝试安装 npm 包 (node-xmpp-server),但安装失败。以前当我试图安装一个全局安装而不是本地安装的包时,但现在它根本没有安装。
请帮助我。

npm install node-xmpp-server
error is: npm ERR! errno -4048
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" "node-xmpp-server"

npm ERR! node v0.12.4
npm ERR! npm v2.10.1
npm ERR! path c:\Users\Jaseem Abbas\Documents\node_modules\node- xmpp-server\examples
npm ERR! code EPERM
npm ERR! errno -4048
npm ERR! Error: EPERM, unlink 'c:\Users\Jaseem Abbas\Documents\node_modules\node-xmpp-server\examples'

npm ERR! at Error (native)
npm ERR! { [Error: EPERM, unlink 'c:\Users\Jaseem Abbas\Documents\node_modules\node-xmpp-server\examples']

npm ERR! errno: -4048,
npm ERR! code: 'EPERM',
npm ERR! path: 'c:\Users\Jaseem Abbas\Documents\node_modules\node-xmpp-server\examples' } npm ERR!
npm ERR! Please try running this command again as root/Administrator.
npm ERR! error rolling back Error: EPERM, unlink 'c:\Users\Jaseem Abbas\Documents\node_modules\node-xmpp-server\examples'

npm ERR! error rolling back at Error (native)
npm ERR! error rolling back { [Error: EPERM, unlink 'c:\Users\Jaseem
Abbas\Documents\node_modules\node-xmpp-server\examples']
npm ERR! error rolling back errno: -4048,
npm ERR! error rolling back code: 'EPERM',
npm ERR! error rolling back path: 'c:\Users\Jaseem Abbas\Documents\node_modules\node-xmpp-server\examples' }

我遇到了同样的问题,我找到了以下解决方案:

  1. 删除两个

    • %ProgramFiles%\nodejs\npm
    • %ProgramFiles%\nodejs\npm.cmd
  2. 进入 %ProgramFiles%\nodejs\node_modules\npm 并在新的 npm 文件夹中复制名为 npmrc 的文件,它应该是 %appdata%\npm\node_modules\npm。这将告诉新的 npm 全局安装包的位置。

  3. 重新启动 Windows 并且成功了。

here(npm 故障排除部分)找到了这个。感谢那里的作者

我遇到了同样的问题,在设置 node.js 之后,我遵循了针对 unix 的指南的部分内容,最终将我当前的工作目录移动到一个新文件夹,但我忘记复制 .npmrc 文件从旧位置到新位置。我还更改了前缀的位置,使其远离 %AppData%,这是我通过使用 npm config ls -l 将当前设置与默认设置进行比较发现的。这里的两条线索是,我在开头有一行名为 userconfig 的行指向我的 .npmrc 文件,该文件位于不同的位置,并且我的前缀已被默认值覆盖。将其改回默认值可解决问题。

尝试将这些重置为默认值并检查您的配置设置是什么。如果它仍然引用您的旧设置,我不确定重新安装 node.js 是否有帮助。

有人说是npm bug https://github.com/npm/npm/issues/9696

据称添加“--force”进行安装可以解决该问题。

我遇到了同样的问题...这是解决方法:

在不需要管理员权限的本地目录中安装 nodejs。

np init

这将创建一个虚拟 package.json。 打开文件并输入所需的依赖项列表。

现在开始:

npm i

这解决了我的问题。

我更改了 npm 版本,但没有再发生这种情况

我尝试了以下解决方案,但不知道哪个对我有用。

  • 运行 reactive-native 以管理员身份在命令提示符下初始化(在 Windows OS 上),希望在 [=26 上与 sudo reactive-native init 配合使用=] OS
  • 运行 npm cache clean 命令提示符中的命令。
  • 暂时禁用防病毒软件。

尝试任何解决方案或全部,

我只是 运行 npm cache clean,并且为我工作

杀死所有锁定文件的进程

似乎这种错误可能是由文件权限锁定引起的 - 我在安装 whatwg-fetch.

时遇到了非常相似的情况(相同的 ERRNO: -4048)

我发现我同时打开的一个Visual Studio实例正在获取它不需要的各种文件。一旦我关闭它,安装就完美了。

这可能是一个快速检查的可能原因,需要在采取更严厉的措施之前消除...

如果您仍然遇到此错误并且可能将节点版本升级到 5.4 > ... 该版本出现错误。 主要存在于降级节点版本的解决方案

在 Windows 中将是:

npm install -g npm@5.3

这对我有用。

将 npm 升级到 5.4.2 它将解决这个问题。

安装命令:npm i -g npm@5.4.2npm i -g npm

如果仍然无效,请尝试使用 npm 缓存清理

清除缓存

你可以像这样使用 force npm cache clean --force

这是 npm 的一个长期存在的问题,他们似乎没有兴趣解决。其他人提到的各种事情有时会起作用(例如关闭 运行 程序,降级版本等)。它通常仅限于 Windows 个安装,尽管最近我什至在 Linux 中也遇到过一些。

似乎出现此错误的原因不止一个,因此可能不会有适用于所有人的单一修复方法。

但是,并发问题通常是导致安装失败的原因。根据迄今为止已收到近 180 条评论的相关 npm 问题线程之一的累积智慧,underlying problem is

a race condition between asynchronous I/O operations accessing the same files on the harddisk. You can certainly influence it by cleaning up the harddisk e.g. with "npm cache verify" or moving the project to a SSD, but this does not solve the root cause of the problem.

同样,关闭 IDE 或禁用病毒扫描程序有时对某些人有效,但如果并发问题背后并不能真正解决问题。

补丁已登陆 npm 5.6.0。根据初步报告,它似乎可以解决问题。因此,如果您的 npm --version 较低,请更新至 5.6.0(或您阅读本文时的当前版本):

npm uninstall -g npm
npm install -g npm@5.6.0

作为suggested here.

如果这没有帮助,那么文件锁定 可能是 真正的原因。并且关闭 IDE,或者暂时禁用病毒扫描程序,或者一些类似的操作确实是可行的方法,正如@Oly 所说 .

删除包-lock.json

再试一次

有同样的问题 关闭 visual studio 解决了问题

对我来说,@Oly 的解决方案有效,我将为 Angular 人补充说,是 ng serve -o 锁定了文件。是的 - 不要 运行 npm installng serve 是项目的 运行ning。

在我的例子中,获取同样的问题。然后首先我停止了 npm 运行 watch 然后再试一次然后它起作用了。

执行以下操作。这可能是 权限 问题。

  1. 卸载所有防病毒程序并重启系统
  2. 安装纱线
  3. 删除 package.lock.json 和 node_modules 文件夹(如果有)
  4. 清除缓存 (npm cache clean --force)
  5. 关闭 VS 代码或其他代码编辑器工具(如果打开)
  6. 现在运行yarn install

这应该可以解决问题。

我遇到了同样的问题,并确定这是由于为我的项目所在的 Google 驱动器文件夹启用了 link 共享引起的。一旦我将它移动到非link-共享文件夹一切正常。

在我的例子中,我右键单击了错误中提到的 json 文件,取消选中只读标志,它起作用了

如果后台有 XAMPP 服务器 运行ning,请将其关闭。

然后运行再次安装。

对我来说就像魔法一样工作