我无法在本地编译我的iOS应用程序,但Android可以正常工作。
我已经使用npm install -g [...]
安装了cordova
和phonegap
。我正在运行OSX(10.7.5)。
两者的版本输出如下:
$ cordova -v
5.1.1
$ phonegap -v
0.9.4
我已经安装了XCode(版本为4.6.2)。我也已经安装了命令行工具。
无论是cordova还是phonegap工具都无法构建,似乎是因为同样的原因。运行phonegap build ios
会输出:
$ phonegap build ios
phonegap detecting iOS SDK environment...
phonegap using the local environment
phonegap compiling iOS...
error ENOENT, no such file or directory '/Users/mike/apps/***/platforms/ios/__CLI__/config.xml'
以下是相同cordova
命令的输出:
$ cordova build ios
cp: copyFileSync: could not write to dest file (code=ENOENT):/Users/mike/apps/***/platforms/ios/__CLI__/config.xml
cp: no such file or directory: /Users/mike/apps/***/platforms/ios/platform_www/*
Parsing /Users/mike/apps/***/platforms/ios/__CLI__/config.xml failed
Error: ENOENT, no such file or directory '/Users/mike/apps/***/platforms/ios/__CLI__/config.xml'
at Error (native)
at Object.fs.openSync (fs.js:500:18)
at Object.fs.readFileSync (fs.js:352:15)
at Object.module.exports.parseElementtreeSync (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/util/xml-helpers.js:118:27)
at Object.ConfigParser (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/configparser/ConfigParser.js:33:24)
at /usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/prepare.js:115:32
at Array.map (native)
at /usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/prepare.js:70:40
at _fulfilled (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:787:54)
at self.promiseDispatch.done (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:816:30)
我认为在路径中应该有一些替换运行在
__CLI__
上,但是很难判断。下面是此文件结构的截图:
我能够使用远程构建服务进行构建,但这相当费力,因为应用程序没有正确加载,所以我需要进行大量调试来解决这个问题。
Node已安装在版本0.12.5。NPM已安装在版本2.11.2。
我已经多次重新安装了平台,但总是出现这个错误。