phonegap运行ios给出shell.js内部错误(Mac,Cordova)

时间:2014-12-02 13:33:19

标签: ios node.js macos cordova npm

这是我在尝试执行" phonegap run ios"时获得的控制台输出,它执行" cordova run ios"。

ErlendMBPrivate:fsecapp erlendellingsen$ phonegap run ios 
[phonegap] executing 'cordova run ios'...
shell.js: internal error

Error: EPERM, operation not permitted '/Applications/XAMPP/htdocs/jobb/fsecapp/platforms/ios/F-Securities/config.xml'
at Object.fs.chmodSync (fs.js:821:18)
at copyFileSync (/usr/local/lib/node_modules/phonegap/node_modules/cordova/node_modules/cordova-lib/node_modules/shelljs/src/cp.js:41:6)
at /usr/local/lib/node_modules/phonegap/node_modules/cordova/node_modules/cordova-lib/node_modules/shelljs/src/cp.js:198:5
at Array.forEach (native)
at Object._cp (/usr/local/lib/node_modules/phonegap/node_modules/cordova/node_modules/cordova-lib/node_modules/shelljs/src/cp.js:157:11)
at Object.cp (/usr/local/lib/node_modules/phonegap/node_modules/cordova/node_modules/cordova-lib/node_modules/shelljs/src/common.js:186:23)
at /usr/local/lib/node_modules/phonegap/node_modules/cordova/node_modules/cordova-lib/src/cordova/prepare.js:74:23
at Array.map (native)
at /usr/local/lib/node_modules/phonegap/node_modules/cordova/node_modules/cordova-lib/src/cordova/prepare.js:65:40
at _fulfilled (/usr/local/lib/node_modules/phonegap/node_modules/cordova/node_modules/q/q.js:787:54)

现在。我有点明白,似乎有一个chmod问题。然而。在输出日志中命名的所有文件夹都是所有用户都可访问,可读和可写的。我已经为所有文件夹添加了chmodded。

更重要的是 当我进入sudo-mode时,没有内部错误。然而。以root身份验证,并使用" sudo -i"执行命令时,命令行无法找到任何有效的签名身份

如果您不了解我在执行sudo时遇到的问题,请参阅我上周发布的StackOverflow问题:Phonegap/cordova command line gives code signing error, xcode works fine. (IOS)

1 个答案:

答案 0 :(得分:2)

Phonegap(通过Cordova)在项目文件夹中权限不足

要修复此问题,必须修改项目文件夹权限,以便Cordova使config.xml文件可写

通常,Phonegap由用户运行,Cordova由Phonegap调用,因此为了给予用户项目文件夹的所有权,必须授予Cordova权限。这可以通过以下方式实现:

sudo chown -R $(whoami) "/Applications/XAMPP/htdocs/jobb/fsecapp"

ggplot2