无论是 ionic 或是 phonegap 在环境这方面,都有雷,哎~ 谁让咱刚接触这块东东
首先就是配置基本的java和android的环境变量 和 安装xcode。
这两个,网上一找一把,就不说了。
我在osx下用的是brew管理工具包。这个基本用苹果做开发的,没有不安装的吧?呵,也不多说了。需要的,自己查一下。很简单。
ionic 需要依赖 gulp,记着配置环境时,将gulp装上。
我在机器上安装了些什么呢?
npm install -g ios-sim gulp
npm install -g ionic cordova
brew install ant
npm install -g phonegap
这样基本上就搞定了环境的配置。
另外遇到的一个大雷,我被它轰的晕了两天。
在使用 ionic build ios 这个命令, 当然,如果平台换成 android 应该也会有这个问题
# ionic build ios
running cordova build ios
Running command: /.../hooks/after_prepare/010_add_platform_class.js /Volumes/Data/Dev/jsApp/iMakeup
Error: spawn EACCES
at exports._errnoException (util.js:746:11)
at ChildProcess.spawn (child_process.js:1155:11)
at Object.exports.spawn (child_process.js:988:9)
at Object.exports.spawn (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/superspawn.js:100:31)
at runScriptViaChildProcessSpawn (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/hooks/HooksRunner.js:188:23)
at runScript (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/hooks/HooksRunner.js:131:16)
at /usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/hooks/HooksRunner.js:114:20
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)
at Promise.promise.promiseDispatch (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:749:13)
万万没想到这个问题其实很简单,原因就在于 hooks/after_prepare/010_add_platform_class.js 这个脚本权限不够,对的,你看到了,它已经给出了提示,可是我只顾着看Error消息了。哎~ 各种郁闷不提,两天时间纠结这东西,浪费了。
解决办法
chmod +x hooks/after_prepare/010_add_platform_class.js
再执行上面的构建命令,一切顺利。
哎,希望朋友们玩的开心吧。