cordova运行android命令失败,错误:EACCES:权限被拒绝

时间:2016-04-05 14:33:29

标签: android cordova ionic-framework android-sdk-tools

我正在尝试使用以下命令在我的linux mint 17.3 Rosa中运行应用程序

 cordova run android

但我每次运行此操作时都会收到以下错误

  /usr/local/lib/node_modules/cordova/node_modules/update-notifier
  /node_modules/configstore/index.js:53
            throw err;
            ^

 Error: EACCES: permission denied, open '/home/mahesh/.config/configstore
 /update-notifier-cordova.json'
 You don't have access to this file.

at Error (native)
at Object.fs.openSync (fs.js:549:18)
at Object.fs.readFileSync (fs.js:397:15)
at Object.create.all.get (/usr/local/lib/node_modules/cordova/node_modules
/update-notifier/node_modules/configstore/index.js:34:26)
at Object.Configstore (/usr/local/lib/node_modules/cordova/node_modules
/update-notifier/node_modules/configstore/index.js:27:44)
at new UpdateNotifier (/usr/local/lib/node_modules/cordova/node_modules
/update-notifier/index.js:34:17)
at module.exports (/usr/local/lib/node_modules/cordova/node_modules   
/update-notifier/index.js:123:23)
at checkForUpdates (/usr/local/lib/node_modules/cordova/src/cli.js:64:20)
at cli (/usr/local/lib/node_modules/cordova/src/cli.js:114:5)
at Object.<anonymous> (/usr/local/lib/node_modules/cordova/
bin/cordova:41:1)

我不知道如何进一步行动。任何人都可以帮助我。我是非常新的

1 个答案:

答案 0 :(得分:0)

我遇到了同样的错误,我按照解决方案1修复了它,您可以尝试使用Solution1或其他解决方案来解决此问题

解决方案1:尝试卸载cordova并重新安装

解决方案2:安装bower_components和reintall cordova android

解决方案3: 您可以使用以下三个选项之一解决此问题:

1:将权限更改为npm的默认目录

1)。找到npm目录的路径:

npm config get prefix

对于许多系统,这将是/ usr / local。

警告:如果显示的路径只是/ usr,请切换到选项2,否则您将搞乱权限。

2)。将npm目录的所有者更改为当前用户的名称(您的用户名!):

sudo chown -R $(whoami)$(npm config get prefix)/ {lib / node_modules,bin,share} 这会更改npm和其他一些工具(lib / node_modules,bin和share)使用的子文件夹的权限。

2:将npm的默认目录更改为另一个目录

有些时候您不想更改npm使用的默认目录(即/ usr)的所有权,因为这可能会导致一些问题,例如,如果您与其他用户共享系统。

相反,您可以配置npm以完全使用其他目录。在我们的例子中,这将是我们的主文件夹中的隐藏目录。

1)。制作全局安装目录:

mkdir~ / .npm-global 2)。配置npm使用新的目录路径:

npm config set prefix'〜/ .npm-global' 3)。打开或创建一个〜/ .profile文件并添加以下行:

export PATH =〜/ .npm-global / bin:$ PATH 4)。回到命令行,更新你的系统变量:

source~ / .profile 测试:在不使用sudo的情况下全局下载软件包。

npm install -g jshint 除了步骤2-4,您还可以使用相应的ENV变量(例如,如果您不想修改〜/ .profile):

NPM_CONFIG_PREFIX =〜/ .npm全局 3:使用包管理器来处理这个问题。

使用正确的权限设置开箱即用。

brew安装节点