nodejs下用npm安装express出错,试过各种方法,都解决不了,求助

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nodejs下用npm安装express出错,试过各种方法,都解决不了,求助相关的知识,希望对你有一定的参考价值。

参考技术A 是给项目安装的话,直接去下一个,然后拷贝过去就行。

通过 nodejs 安装 Express 时出错

【中文标题】通过 nodejs 安装 Express 时出错【英文标题】:Error installing Express via nodejs 【发布时间】:2018-06-11 20:28:52 【问题描述】:

我正在尝试通过 nodeJS 安装 express,我得到的错误告诉我应该重命名我的目录。我已经在我的项目文件夹中运行了 npm init,所以我假设设置是正确的。我使用的确切命令是:npm install express --save,npm-debug.log 列出了一堆以“silly”开头的语句,但最重要的语句(imo)如下:

3242 verbose stack Error: EPERM: operation not permitted, rename 'C:\Users\Leungi5368\Documents\CS Education\Side Projects\TimeManagerElectron\TimeManagerElectron\node_modules\.staging\depd-c51a5acf' -> 'C:\Users\Leungi5368\Documents\CS Education\Side Projects\TimeManagerElectron\TimeManagerElectron\node_modules\depd'
3242 verbose stack     at destStatted (C:\Program Files\nodejs\node_modules\npm\lib\install\action\finalize.js:25:7)
3242 verbose stack     at C:\Program Files\nodejs\node_modules\npm\node_modules\graceful-fs\polyfills.js:264:29
3242 verbose stack     at FSReqWrap.oncomplete (fs.js:123:15)
3242 verbose stack
3242 verbose stack Error: EPERM: operation not permitted, rename 'C:\Users\Leungi5368\Documents\CS Education\Side Projects\TimeManagerElectron\TimeManagerElectron\node_modules\.staging\depd-c51a5acf' -> 'C:\Users\Leungi5368\Documents\CS Education\Side Projects\TimeManagerElectron\TimeManagerElectron\node_modules\depd'
3242 verbose stack     at Error (native)
3243 verbose cwd C:\Users\Leungi5368\Documents\CS Education\Side Projects\TimeManagerElectron\TimeManagerElectron
3244 error Windows_NT 10.0.16299
3245 error argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "express" "--save"
3246 error node v6.11.2
3247 error npm  v3.10.10
3248 error path C:\Users\Leungi5368\Documents\CS Education\Side Projects\TimeManagerElectron\TimeManagerElectron\node_modules\.staging\depd-c51a5acf
3249 error code EPERM
3250 error errno -4048
3251 error syscall rename
3252 error Error: EPERM: operation not permitted, rename 'C:\Users\Leungi5368\Documents\CS Education\Side Projects\TimeManagerElectron\TimeManagerElectron\node_modules\.staging\depd-c51a5acf' -> 'C:\Users\Leungi5368\Documents\CS Education\Side Projects\TimeManagerElectron\TimeManagerElectron\node_modules\depd'
3252 error     at destStatted (C:\Program Files\nodejs\node_modules\npm\lib\install\action\finalize.js:25:7)
3252 error     at C:\Program Files\nodejs\node_modules\npm\node_modules\graceful-fs\polyfills.js:264:29
3252 error     at FSReqWrap.oncomplete (fs.js:123:15)
3252 error
3252 error Error: EPERM: operation not permitted, rename 'C:\Users\Leungi5368\Documents\CS Education\Side Projects\TimeManagerElectron\TimeManagerElectron\node_modules\.staging\depd-c51a5acf' -> 'C:\Users\Leungi5368\Documents\CS Education\Side Projects\TimeManagerElectron\TimeManagerElectron\node_modules\depd'
3252 error     at Error (native)
3252 error   Error: EPERM: operation not permitted, rename 'C:\Users\Leungi5368\Documents\CS Education\Side Projects\TimeManagerElectron\TimeManagerElectron\node_modules\.staging\depd-c51a5acf' -> 'C:\Users\Leungi5368\Documents\CS Education\Side Projects\TimeManagerElectron\TimeManagerElectron\node_modules\depd'
3252 error     at destStatted (C:\Program Files\nodejs\node_modules\npm\lib\install\action\finalize.js:25:7)
3252 error     at C:\Program Files\nodejs\node_modules\npm\node_modules\graceful-fs\polyfills.js:264:29
3252 error     at FSReqWrap.oncomplete (fs.js:123:15)
3252 error
3252 error Error: EPERM: operation not permitted, rename 'C:\Users\Leungi5368\Documents\CS Education\Side Projects\TimeManagerElectron\TimeManagerElectron\node_modules\.staging\depd-c51a5acf' -> 'C:\Users\Leungi5368\Documents\CS Education\Side Projects\TimeManagerElectron\TimeManagerElectron\node_modules\depd'
3252 error     at Error (native) parent: 'microtrack' 
3253 error Please try running this command again as root/Administrator.
3254 verbose exit [ -4048, true ]`

上下文:我一直在关注 Brad Traversy 在 YT 上的 NodeJS 和 Express 数据库应用程序系列,试图学习一些在我的项目中使用的后端内容,并且他使用的命令(如上所列)完美运行。

提前感谢您的任何帮助/建议。

【问题讨论】:

使用sudo npm install express --save 尝试以root/Administrator 的身份运行它,正如它在日志的倒数第二行中所说的那样。 不幸的是,sudo 不被识别为命令。我也使用具有管理员权限的终端无济于事。 @NaymanLeung 我认为您在 Windows 环境中,因此请尝试以管理员身份打开您的 cmd,然后 npm install express --save 试试npm cache clean 有时事情会被搞砸。 【参考方案1】:

我做了更多的研究,发现在关闭 atom IDE 后运行 npm install 命令是有效的。感谢大家的帮助!

完整线程:https://github.com/npm/npm/issues/12059 回答到页面底部

【讨论】:

【参考方案2】:

检查您的问题是否是由名为 .staging 的目录引起的。通常当一个目录以 . mean 是一个隐藏文件夹,因此在这种情况下,安装程序会避开该文件夹,因此它试图找到路径 'C:\Users\Leungi5368\Documents\CS Education\Side Projects\TimeManagerElectron\TimeManagerElectron\node_modules\ depd' 不存在的

【讨论】:

以上是关于nodejs下用npm安装express出错,试过各种方法,都解决不了,求助的主要内容,如果未能解决你的问题,请参考以下文章

NodeJS(node.exe, npm, express, live-server)安装

nodejs 怎么全局安装express

win7下安装配置nodejs使用npm安装express

react+express项目

window 10 64bit 安装nodejs v7.0.5 + npm v4.1.2 + Express 4.x

linux下离线安装nodejsnpm以及npm插件库(pm2express等)