2014-01-13 71 views
4

我曾尝试使用下面的命令创建一个新的Hello World项目,PhoneGap的CLI“科尔多瓦打造IOS”失败

cordova create hello com.example.hello HelloWorld 

项目创建成功,然后我通过

cordova platform add ios 
添加iOS平台

并验证我有它正确添加,i型

cordova platform list 

iOS平台被示出在列表中。所以在这一点上,根据PhoneGap教程,我可以使用命令

cordova build ios 

构建iOS版本的项目。不过,我会遇到以下错误:

Generating config.xml from defaults for platform "ios" 
Preparing ios project 
Compiling app on platform "ios" via command "/Users/Aldour/PhoneGap/hello/platforms/ios/cordova/build" 

/usr/local/lib/node_modules/cordova/node_modules/q/q.js:126 
        throw e; 
        ^
Error: An error occurred while building the ios project. 
    at ChildProcess.<anonymous> (/usr/local/lib/node_modules/cordova/src/compile.js:65:22) 
    at ChildProcess.EventEmitter.emit (events.js:98:17) 
    at maybeClose (child_process.js:735:16) 
    at Socket.<anonymous> (child_process.js:948:11) 
    at Socket.EventEmitter.emit (events.js:95:17) 
    at Pipe.close (net.js:466:12) 

,我用Google搜索大多是关于Android版本,谈论无效环境路径设置的结果。我不知道它是否相关,因为我可以创建和构建一个针对Android平台没有问题的PhoneGap项目。

这里是我的$ PATH:

/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/bin/node:/usr/local/bin/npm:/Developer/SDKs/android-sdk-macosx/platform-tools:/Developer/SDKs/android-sdk-macosx/tools 

编辑: 问题从应用程序商店通过重新安装的Xcode解决

+0

每当我已经看到了这个错误与科尔多瓦,它通常是因为科尔多瓦我的版本是不被用于与原生SDK的版本兼容。我不能为iOS发言,但我之前在Android和BlackBerry10上都看到过这个错误。某些Cordova构建了对平台API的支持。如果您使用的是其他版本的较新版本,则可能会导致类似上述的编译错误。 –

+0

@AdamStanley感谢您的回复。那么如果我想要如何恢复到旧版本的cordova呢?我安装了“sudo npm install -g cordova” –

+0

我一直删除现有节点(npm uninstall -g cordova),然后重新安装。要安装特定版本的NPM模块,您可以执行此操作“npm install @”。更多:https://npmjs.org/doc/install.html –

回答

6

我曾在Android平台同样的问题,它是用命令解决:

cordova platform rm android 
cordova platform add android 
cordova build android 

在Node.Js控制台中。尝试在ios中。

如果'cordova platform add android'出现错误,则可能需要手动删除项目文件夹层次结构中的所有android文件夹。

3

如果使用--verbose运行构建版,您可能会看到一些权限问题。默认情况下,如果您没有更改,XCode会在〜/ Developer中创建一个生成文件夹。创建该文件夹时可能存在权限问题。只需执行以下命令:sudo cordova bulid ios 这应该解决您的问题。

6

这解决了我的问题:

cordova platform remove ios 
cordova platform add ios 
cordova build ios 
相关问题