我对离子框架很新,我怎么能在windows 7系统中运行并运行,但现在我正在尝试用离子框架构建一个Android应用程序,我按照以下步骤操作
>npm install -g cordova >npm install -g ionic >ionic start resistance blank >cd resistance >ionic platform add android
直到这里我做得很好,但是当我运行命令时
>ionic build android
我收到以下错误
C:\Users\vishwant\resistance>ionic build android Running command: "C:\Program Files\nodejs\node.exe" C:\Users\vishwant\resistance\hooks\after_prepare\010_add_platform_class.js C:\Users\vishwant\resis tance add to body class: platform-android Running command: C:\Users\vishwant\resistance\platforms\android\cordova\build.bat C:\Users\vishwant\resistance\platforms\android\cordova\node_modules\q\q.js:126 throw e; ^ Error: ENOENT, no such file or directory 'C:\adt-bundle-windows-x86_64-20140702\sdk\tools\tools\lib\build.template' at Object.fs.openSync (fs.js:432:18) at Object.fs.readFileSync (fs.js:289:15) at C:\Users\vishwant\resistance\platforms\android\cordova\lib\build.js:120:40 at _fulfilled (C:\Users\vishwant\resistance\platforms\android\cordova\node_modules\q\q.js:798:54) at self.promiseDispatch.done (C:\Users\vishwant\resistance\platforms\android\cordova\node_modules\q\q.js:827:30) at Promise.promise.promiseDispatch (C:\Users\vishwant\resistance\platforms\android\cordova\node_modules\q\q.js:760:13) at C:\Users\vishwant\resistance\platforms\android\cordova\node_modules\q\q.js:574:44 at flush (C:\Users\vishwant\resistance\platforms\android\cordova\node_modules\q\q.js:108:17) at process._tickCallback (node.js:419:13) Error: C:\Users\vishwant\resistance\platforms\android\cordova\build.bat: Command failed with exit code 8 at ChildProcess.whenDone (C:\Users\vishwant\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\src\cordova\superspawn.js:135:23) at ChildProcess.emit (events.js:98:17) at maybeClose (child_process.js:756:16) at Process.ChildProcess._handle.onexit (child_process.js:823:5)
我注意到路径不正确,但在路径变量中我已正确设置,即直到工具.
错误:ENOENT,没有这样的文件或目录'C:\ adt-bundle-windows-x86_64-20140702\sdk\tools\tools\lib\build.template'
首先,我不明白为什么它附加了一个工具\并搜索build.template其次,如果我手动创建工具\中的额外工具\文件夹\(我想避免),那么上面的错误消失但是我会出现
C:\Users\vishwant\resistance>ionic build android Running command: "C:\Program Files\nodejs\node.exe" C:\Users\vishwant\resistance\hooks\after_prepare\010_add_platform_class.js C:\Users\vishwant\resis tance add to body class: platform-android Running command: C:\Users\vishwant\resistance\platforms\android\cordova\build.bat [Error: Please install Android target "android-19". Hint: Run "android" from your command-line to open the SDK manager.] Error: C:\Users\vishwant\resistance\platforms\android\cordova\build.bat: Command failed with exit code 2 at ChildProcess.whenDone (C:\Users\vishwant\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\src\cordova\superspawn.js:135:23) at ChildProcess.emit (events.js:98:17) at maybeClose (child_process.js:756:16) at Process.ChildProcess._handle.onexit (child_process.js:823:5)
由于我已经安装了android sdks和目标4.4W,这对于cordova项目来说效果很好,我不明白为什么它的离子框架失败了.
请纠正我如果我错过了什么.
谢谢
我想这是因为你将ANDROID_HOME设置为错误的路径.
ANDROID_HOME必须设置为android SDK的根目录,而不是工具文件夹:
SET ANDROID_HOME=C:\adt-bundle-windows-x86_64-20140702\sdk
但工具文件夹必须位于路径中.
SET PATH=%PATH%;%ANDROID_HOME%\tools
(当然使用windows设置来设置env vars,不要在cmd中这样做,这只是为了更清楚地解释)