【问题标题】:Ember-CLI "You don't have permission to this file"Ember-CLI“您没有此文件的权限”
【发布时间】:2016-05-17 15:24:58
【问题描述】:

上周我开始修改 Ember 框架。然而,我真的开始喜欢它了,当我尝试使用 ember <command> 运行任何 Ember-CLI 命令时,它向我抛出了以下错误:

/usr/lib/node_modules/ember-cli/node_modules/configstore/index.js:46
            throw err;
                  ^
Error: EACCES, permission denied '/home/mattias/.config/configstore/ember-cli.json'
You don't have access to this file.

at Object.fs.openSync (fs.js:439:18)
at Object.fs.readFileSync (fs.js:290:15)
at Object.create.all.get (/usr/lib/node_modules/ember-cli/node_modules/configstore/index.js:27:26)
at Object.Configstore (/usr/lib/node_modules/ember-cli/node_modules/configstore/index.js:20:44)
at clientId (/usr/lib/node_modules/ember-cli/lib/cli/index.js:22:21)
at module.exports (/usr/lib/node_modules/ember-cli/lib/cli/index.js:64:19)
at /usr/lib/node_modules/ember-cli/bin/ember:26:3
at /usr/lib/node_modules/ember-cli/node_modules/resolve/lib/async.js:46:14
at process (/usr/lib/node_modules/ember-cli/node_modules/resolve/lib/async.js:173:43)
at ondir (/usr/lib/node_modules/ember-cli/node_modules/resolve/lib/async.js:188:17)

起初我以为它与 Ember 或 npm 有关,所以我尝试重新安装 npm、NodeJS 和 Ember,但是每当我想使用 Ember-CLI 时它总是返回错误。

感谢您的建议。

【问题讨论】:

  • 您是否可能使用sudo 安装了 Ember CLI?您可以查看权限,或者如果您想重新开始,只需执行/usr/lib/node_modules/ember-cli 之类的操作(如果您的权限搞砸了,可能需要sudo)然后npm install -g ember-cli
  • 如果您使用 sublime 文本,请在运行命令之前尝试关闭它我有一些奇怪的问题,然后 sublime 在项目中有 dist 和 tmp 至少对于 ember 服务

标签: node.js ember.js npm npm-install


【解决方案1】:

更改 .config/configstore 的权限

sudo chmod -R 777 /home/MyUsername/.config/configstore

如果您担心安全性,您可以稍后更改权限。

sudo chmod -R 771 /users/MyUsername/.config/configstore

【讨论】:

    【解决方案2】:

    每次升级时,这仍然是一个问题。我这样做了,它似乎成功了:

    sudo chmod g+rwx /[username]/.config /[username]/.config/configstore /[username]/.config/configstore/ember-cli.json

    我尽量避免使用 sudo 安装 ember-cli,只提供它抱怨提升 chown 权限的任何文件。

    下次遇到此问题时,我将尝试关闭编辑器中打开的文件,因为我想知道这是否是问题所在。

    【讨论】:

      【解决方案3】:

      我遇到了类似的问题,我使用了sudo npm install -g ember-cli 并且有效。

      这适用于 OS X。它将终端置于管理员模式。与在 Windows 中一样,您应该以管理员身份打开 git bash 或 cmd 行。

      【讨论】:

        猜你喜欢
        • 2015-10-30
        • 1970-01-01
        • 2016-06-05
        • 2016-01-31
        • 2010-09-28
        • 1970-01-01
        • 2015-12-03
        • 1970-01-01
        相关资源
        最近更新 更多