无法安装任何 NPM 包,错误 4058
Posted
技术标签:
【中文标题】无法安装任何 NPM 包,错误 4058【英文标题】:Can't install any NPM package, error 4058 【发布时间】:2018-09-12 05:33:06 【问题描述】:我正在尝试在我的项目中安装 Grunt。它曾经完美地工作,但现在由于某种原因,它没有。每次我尝试安装 Grunt 时,都会收到此错误:
npm ERR! path C:\irrelevent\path\project\node_modules\ansi-styles
npm ERR! code ENOENT
npm ERR! errno -4058
npm ERR! syscall rename
npm ERR! enoent ENOENT: no such file or directory, rename 'C:\irrelevent\path\project\node_modules\ansi-styles' -> 'C:\irrelevent\path\project\.ansi-styles.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\Me\AppData\Roaming\npm-cache\_logs\2018-04-03T00_52_10_105Z-debug.log
奇怪的是丢失的包每次都会改变。
我尝试验证缓存,删除node_modules
文件夹,使用--force
清理缓存。卸载 NPM 和 NodeJS,重启我的电脑。没有机会。
出于安全原因,我不得不格式化我的电脑,我拿了项目文件夹而不是 Roaming
文件夹,我不知道这是否有影响,但自从我重新安装了 NPM 后应该不会。
我不确定这是否会有所帮助,但这是我的package.json
"name": "project",
"version": "2.1.0",
"repository": "project-2.0",
"devDependencies":
"grunt": "^1.0.2",
"grunt-cli": "^1.2.0",
"grunt-contrib-concat": "~1.0.1",
"grunt-contrib-copy": "^1.0.0",
"grunt-contrib-cssmin": "~2.0.0",
"grunt-contrib-jshint": "~1.1.0",
"grunt-contrib-uglify": "~2.2.0",
"grunt-contrib-watch": "~1.0.0",
"grunt-html-build": "^0.7.1",
"grunt-real-favicon": "^0.2.2"
,
"dependencies":
"angular-bootstrap-colorpicker": "^3.0.31",
"angularjs-geolocation": "^0.1.3",
"sprintf-js": "^1.1.1"
【问题讨论】:
【参考方案1】:试试这些步骤:
删除package-lock.json
并再次运行 NPM。
确保没有其他 node.js 进程正在运行(检查任务管理器)
如果您使用的是 Visual Studio 代码,请将其关闭并再次尝试运行 npm install
。
如果一切都失败了,请重新启动计算机。
在此处查看主题:https://github.com/npm/npm/issues/17444
【讨论】:
不幸的是,这不起作用。我尝试删除package-lock.json
(没有),没有运行 Node.Js 进程。我关闭了 phpstorm(我不使用 VSCode)并且仍然有错误。我什至尝试卸载 NodeJS 并删除 Roaming 中的文件夹。
原来是 Malwarebytes 错误。感谢您为我指出正确的线程。【参考方案2】:
对我来说,原因是 Dropbox(我的 NodeJS 项目位于 Dropbox 文件夹的深处)。我暂停了同步,再次尝试npm install
,它安装没有错误。然后我当然恢复了同步。
【讨论】:
【参考方案3】:您不应该忘记通过cd "nameofproject"
转到项目文件夹,然后"npm start"
就可以了。
【讨论】:
【参考方案4】: 删除 package-lock.josn 和 node_modulesnpm cache clear --force
清除 npm 缓存
重启 VS 代码
再次运行npm install
【讨论】:
【参考方案5】:试试这个:
检查您是否创建了具有相同文件夹名称的内部文件夹。
如果存在 2 个同名文件夹(删除第一个文件夹)
转到终端:npm start
【讨论】:
【参考方案6】:为 VS-Code 解决这个错误:
-
关闭 VS 代码
执行
npm cache clear --force
重启 VS-Code。
【讨论】:
【参考方案7】:我遇到了同样的问题,我的问题是在更改目录(cd 前端)的帮助下解决的,因为我的项目结构是 js>frontend>src>index.html
在运行 npm start 之前,请确保您位于正确的目录中。
解决方案
-
cd frontend(你的目录名)
npm 开始
我安装了(npm install -D live-server)并且 在 package.json 中,我将“start”命令设置为 "start":"live-server src--verbose"
【讨论】:
【参考方案8】:我尝试了很多东西,比如安装不同的版本,清除缓存,编辑环境变量但没有任何效果,然后我没有安装 nodejs,我只是提取 nodejs 的文件,它适用于我的情况。
【讨论】:
这并不能真正回答问题。如果您有其他问题,可以点击 进行提问。要在此问题有新答案时收到通知,您可以follow this question。一旦你有足够的reputation,你也可以add a bounty 来引起对这个问题的更多关注。 - From Review以上是关于无法安装任何 NPM 包,错误 4058的主要内容,如果未能解决你的问题,请参考以下文章