2

不太确定 Node.js 和 NPM 最近发生了什么变化(即最近几天),但我似乎无法找到一种方法来node_modules为任何在 Windows 10 上使用 Node.js 的项目安装依赖项......

我目前的设置如下:

Node.js: v9.5.0 NPM: v5.6.0 Vue.js: v2.9.3

我试过在安装之前清除缓存:npm cache clear -f

每当我尝试运行npm inpm install出现以下错误列表时:

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.3 (node_modules\fsevents): 
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Error: EPERM: operation not permitted, rename 'C:\xampp\htdocs\vue-scrolling-table-sample\node_modules\.staging\fsevents-a6c1bd51\node_modules\abbrev' -> 'C:\xampp\htdocs\vue-scrolling-table-sample\node_modules\.staging\abbrev-3ab84c45'

npm ERR! path C:\xampp\htdocs\vue-scrolling-table-sample\node_modules\acorn
npm ERR! code ENOENT
npm ERR! errno -4058
npm ERR! syscall rename
npm ERR! enoent ENOENT: no such file or directory, rename 'C:\xampp\htdocs\vue-scrolling-table-sample\node_modules\acorn' -> 'C:\xampp\htdocs\vue-scrolling-table-sample\node_modules\.acorn.DELETE'
npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\mbosse\AppData\Roaming\npm-cache\_logs\2018-02-14T18_27_56_988Z-debug.log

指定的 debug.log 包含以下内容:

19859 警告可选跳过可选依赖:fsevents@1.1.3 (node_modules\fsevents):

19860 警告可选跳过可选依赖项:错误:EPERM:不允许操作,重命名 'C:\xampp\htdocs\vue-scrolling-table-sample\node_modules.staging\fsevents-a6c1bd51\node_modules\abbrev' -> 'C:\ xampp\htdocs\vue-scrolling-table-sample\node_modules.staging\abbrev-3ab84c45'

19861 详细可选跳过可选依赖:

19861 详细可选 请尝试以 root/管理员身份再次运行此命令。

19862 详细堆栈错误:ENOENT:没有这样的文件或目录,重命名 'C:\xampp\htdocs\vue-scrolling-table-sample\node_modules\acorn' -> 'C:\xampp\htdocs\vue-scrolling-table-示例\node_modules.acorn.DELETE'

19863 详细 cwd C:\xampp\htdocs\vue-scrolling-table-sample

19864 详细的 Windows_NT 10.0.14393

19865 详细 argv "C:\ProgramFiles\nodejs\node.exe" "C:\ProgramFiles\nodejs\node_modules\npm\bin\npm-cli.js" "i"

19866 详细节点 v9.5.0

19867 详细的 npm v5.6.0

19868 错误路径 C:\xampp\htdocs\vue-scrolling-table-sample\node_modules\acorn

19869 错误代码 ENOENT

19870 错误 errno -4058

19871 错误系统调用重命名

19872 错误 enoent ENOENT:没有这样的文件或目录,重命名 'C:\xampp\htdocs\vue-scrolling-table-sample\node_modules\acorn' -> 'C:\xampp\htdocs\vue-scrolling-table-sample\ node_modules.acorn.DELETE'

19873 错误 enoent 这与 npm 无法找到文件有关。

19874 详细退出 [-4058, true ]

因此,出于某种原因,NPM 似乎无法重命名node_modules依赖项。我尝试将 NPM 回滚到早期版本(以防 npm@latest 不够稳定)。

使用nvm我已经完全卸载了所有版本的 Node.js 和 NPM 并重新安装了它们。从那以后,我尝试在 Node.js v6.11.3 设置以及 Node.js v8.9.4 上安装我的依赖项,结果相同。

任何建议都会非常有益,谢谢!

4

2 回答 2

2

可能重复 => npm ERR!错误:EPERM:不允许操作,重命名

脚步:

  1. npm 缓存清理 --force
  2. npm 安装

如果且仅当这不起作用时,我所做的是擦除 node_modules 文件夹和 package-lock.json (如果您有最后一个)并重复步骤 1 和 2

于 2019-08-13T09:44:20.800 回答
0

如果可能您已重命名您的 package.json 并且名称与您的 package-lock.json 不匹配

要解决此错误,请打开您的 package.json 和 package-lock.json 以检查“name”键是否具有相同的值。

如果没有更改,请更改它们以匹配您的项目名称。

例如,如果您的项目名称是 todo-list,那么“name”值可以是 todo-list。请注意,这不是强制性的。

于 2022-03-03T17:50:36.533 回答