Yo Generator:.config 不允许进行 EPERM 操作

Yo Generator: EPERM operation not permitted on .config

尝试启动您生成的项目并运行出现以下错误(运行 on osx):

Error: EPERM, operation not permitted '/Users/<user>/.config'
    at Object.fs.mkdirSync (fs.js:642:18)
    at sync (/usr/local/lib/node_modules/yo/node_modules/configstore/node_modules/mkdirp/index.js:70:13)
    at Function.sync (/usr/local/lib/node_modules/yo/node_modules/configstore/node_modules/mkdirp/index.js:76:24)
    at Object.create.all.get (/usr/local/lib/node_modules/yo/node_modules/configstore/index.js:41:13)
    at Object.Configstore (/usr/local/lib/node_modules/yo/node_modules/configstore/index.js:27:44)
    at new Insight (/usr/local/lib/node_modules/yo/node_modules/insight/lib/index.js:26:34)
    at Object.<anonymous> (/usr/local/lib/node_modules/yo/cli.js:123:15)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)

我知道这是一个权限错误,如果我能找到发生权限错误的 .config 目录就不会出现这样的问题。我已打开隐藏文件,但在任何地方都看不到 .config。我确实尝试更改 node_modules/configstore 的权限,因为我已经看到在使用 yo 时提到该目录时出现 EPERM 错误,但没有效果。

任何见解将不胜感激!

在其他人遇到此问题的情况下,对我来说最终的问题是该文件夹是 "locked"。要解决此问题,请右键单击/ctrl+单击您的用户文件夹,然后 select 获取信息。在一般副标题下,deselect "Locked".

希望这对遇到此问题的其他人有所帮助。

在windows中,需要去掉文件的只读标志 (在我的案例中,文件位于 C:\Users\Sanjay\AppData\Roaming\npm\node_modules\yo\node_modules\configstore)

我在 Windows 10 中遇到了与 jhipster-generator 类似的问题,原因是在此之前,用于生成源代码的命令 jhipster 崩溃并且未正确完成。

EPERM: operation not permitted, rename 'C:\Users\xxx\AppData\Local\insight-nodejs\Config\insight-generator-jhipster.json.2340439885' -> 'C:\Users\xxx\AppData\Local\insight-nodejs\Config\insight-generator-jhipster.json'

所以,我右键单击文件夹 "C:\Users\xxx\AppData\Local\insight-nodejs\Config" -> 取消选中 "Read-only" 属性,然后确定 -> 问题已解决。