npm 不会卸载包

npm doesn't uninstall packages

我一直在尝试删除一些我用 npm 安装的包,但它没有删除它们。在 运行 npm uninstall -g package 之后,包仍然可以在我的终端中执行,并且它仍然在安装 npm 二进制文件的路径中。

此外,为什么 npm 在 ~/.local/share/npm/bin/ 中安装软件包?这是我第一次看到 npm 在那里安装软件包。几周前我在安装一些语言服务器时遇到了一个问题,但它们无法执行,结果我不得不将 ~/.local/share/npm/bin 添加到我的 $PATH 因为那是 npm 安装所有东西的地方。现在 npm 不会删除安装在那里的任何包。我已经查看了 npm 配置 (npmrc),但我没有看到任何更改安装路径的选项。我拥有的与 npm 相关的唯一环境变量是在 ~/.config/npm 而不是 ~/.npmrc.

中设置用户配置

我有其他机器具有完全相同的设置和 npm 它没有在 ~/.local/share/npm/bin/ 中安装包,我可以正常卸载包。

有人知道 npm 有什么问题吗?

npm --version 7.8.0

我的配置:

cache=/home/user/.cache/npm
init-module=/home/user/.config/npm/config/npm-init.js
package-lock=false
tmp=/run/user/1000/npm

好的,我注意到如果我重新安装无法删除的软件包,它们会进入另一个文件夹 /user/bin/,node_modules 在 /user/lib/node_modules 中。在 ~/.local/share/npm/lib 之前。现在有了它们所属的包裹,我无法毫无问题地删除它们。不知道为什么这些软件包最初安装在不同的路径中。