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

时间:2015-01-15 03:41:29

标签: npm yeoman yeoman-generator

尝试启动yo生成的项目并遇到以下错误(在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)

我理解这是一个权限错误,如果我只能找到发生权限错误的.c​​onfig目录就不会出现这样的问题。我打开了隐藏文件,我没有看到任何地方的.config。我确实尝试更改node_modules / configstore的权限,因为我在使用yo时看到了关于EPERM错误的目录引用,但没有效果。

非常感谢任何见解!

3 个答案:

答案 0 :(得分:1)

在其他任何人遇到这个问题的情况下,我的问题最终是文件夹被锁定了#34;。要解决此问题,请右键单击/按住Ctrl键并单击您的用户文件夹,然后选择“获取信息”。在通用子标题下,取消选择&#34;已锁定&#34;。

希望这有助于其他任何偶然发现此事的人。

答案 1 :(得分:0)

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

答案 2 :(得分:0)

我在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”->取消选中“只读”属性,然后单击确定->问题已解决。