ionic build android 中的报错详细原因以及解决方法
一、执行打包命令
ionic build android
1.报错:
原因: 其实也并非报错,但是会一直在下载gradle,由于网络或者其他原因,导致下载比较慢,
解决方案: 手动下载gradle,并安装下面方法进行安装和配置:安装完成之后然后打开cmd命令窗口,执行命令: gradle -v
查看是否安装成功;
2.重新build之后,报错如下:
Error: Could not find an installed version of Gradle either in Android Studio, or on your system to install the gradle wrapper. Please include gradle in your path, or install Android Studio
翻译: 找不到一个安装版本的Gradle在Android工作室,或者基于触摸屏安装Gradle包装器。请gradle包含在您的路径,或安装Android工作室
这个是因为你 本地没有安装 gradle导致的, 解决方案: 安装gradle ,如果已经安装的话,请配置环境变量;
下载地址:https://services.gradle.org/distributions/ 我本地下载的是 gradle-2.13-all.zip ;
然后将下载包放到位置: D:\myApp\platforms\android\gradle\ 下:
解压的时候可以解压到自己习惯的位置: 但是要配置 PATH 变量:
测试是否安装成功:
关闭cmd窗口,重新打开,并执行命令: gradle -v
然后再继续重新 build 打包;
如果还是出错或者还是会继续下载 gradle,那就按照下面的方法进行尝试:
1、打开 项目\platforms\android\gradle\wrapper 中的 gradle-wrapper.properties
更改distributionUrl 的地址:
distributionUrl =../gradle-2.13-all.zip
2、项目\platforms\android\cordova\lib\builders 中的 GradleBuilder.js
更改:var distributionUrl = process.env['CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL'] || 'xxxxxxxxxxxxxxxxx';
如下:
var distributionUrl = process.env['CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL'] || '../gradle-2.13.-all.zip';
二、出现新的问题:
重新build之后,又有新的报错: 如下;
尝试了几种常见的解决办法:
1)按照网上说的是 java虚拟机的内存不够,然后重新创建环境变量设置;
变量名:_JAVA_OPTIONS
变量值:-Xmx512M
但是并没有解决我的问题;
2)终于找到原因: 我的电脑是64位windows操作系统,而我安装的是32位的 jdk,故而 报出上面的错误;
1、如何确认自己的jdk的版本是 64位的还是32位的:
打开cmd命令窗口 执行命令: java -version
如果是64位的会显示如下所示,如果没有标明是多少位的,默认一般是32位的;
重新安装了64位匹配我电脑的版本的jdk,然后重新build;
又有了新的错误:
A problem occurred evaluating root project 'android'.
Failed to apply plugin [id 'com.android.aplication']
Minimum supported Gradle version is 2.14.1. Current version is 2.13. If using the gradle wrapper, try editing the distributionUrl in D:\MyAnguApp\ionic_demo1\gradle\wrapper\gradle-wrapper.properties to gradle-2.14.1-all.zip.
翻译: 其中要点: 最低支持Gradle版本是2.14.1。当前版本是2.13。
原来是我之前下载的gradle的版本太低了,最低支持的是 2.14.1 的版本,于是又重新下载更高的版本;
然后继续 build ,结果又报错:
报错内容: you have not accepted the license agreeements of the following SDK components:[Android SDK Platform 25]; ...
翻译: 你没有接受以下SDK组件的许可谈判:[Android SDK平台25]
解决方案: 通过打开android sdk manager.exe后把相应缺少的包
起初,我只勾选了这一个,然后进行安装完成后,再次build还是报同样的错误,于是,我索性将所有 7.1.1内部的插件全部勾选安装:
安装完成以后,再次进行build: 执行如下图:
开始我以为又要报错的节奏,因为一直在download 一些东西,中途我退出、重新build试了好几次,最终,找到原因:
原来是执行的慢的原因,只要你的网络没问题,稍微耐心等下一下,就真的见到了成果!!!!
忐忑 + 焦虑:这是要成功吗???
果然,YES !!成功了 ^_^ ^_^ ^_^
ionic build android 中的报错详细原因以及解决方法的更多相关文章
- 服务端返回的json数据,导致前端报错的原因及解决方法
前言 最近在开发的过程中遇到了一个问题:后端传过来的json字符串不是标准的json字符串 导致报错的原因 后端传过来的json字符串中包含一些不标准的字符或错误的引号嵌套 1)\n 2) \r 3) ...
- eclipse里index.jsp头部报错的原因和解决方法
index.jsp的头<%@这句报错的话,是因为没有引入Tomcat的原因.解决:A:Window---Preferences---server---RuntimeEnviroments--Ad ...
- 安装swoole出现make报错的原因与解决方法
安装swoole报错,错误信息如下: 报错原因 报错很明显,找不到 openssl/ssl.h ,首先要确认电脑上有没有安装 openssl Mac安装openssl 既然它找不到,那么就需要手动的指 ...
- zookeeper各种报错、原因及解决方法汇总(持续更新)
[root@iZ23nn1p4mjZ zookeeper-3.4.10]# bin/zkCli.sh -server localhost:2181,localhost:2182,localhost:2 ...
- git提交待审核代码,报错没有change-id的解决方法
git提交是报错没有change-id的解决方法: 1.先仔细查看报错内容,查出是哪天提交记录缺少change-id 2.如果是最近的一条缺少,则直接执行git commit --amend &quo ...
- 使用git clone 报错curl56 errno 10054解决方法
使用git clone 报错curl56 errno 10054解决方法 ----------------版权声明:本文为CSDN博主「伽马射线爆」的原创文章,遵循CC 4.0 BY-SA版权协议,转 ...
- eclipse中js报错简单快捷的解决方式
eclipse中对正确的js文件报错十分常见,我的项目中只要是以.js结尾的必会报错,作为一名小小的程序员,看到“满江红”甚是烦躁!今天就给大家分享一个方便又快捷的解决方案. 瞄准被报错的js文件点鼠 ...
- Tomcat8升级后URL中特殊字符报错出现原因
请求带上花括号等字符,请求无法送达服务端,报错: Failed to load resource: the server responded with a status of 400 () https ...
- django框架使用mysql报错,及两种解决方法
1.django框架 settings.py文件中部分代码: DATABASES = { # 'default': { # 'ENGINE': 'django.db.backends.sqlite3' ...
随机推荐
- 0基础手把手教你搭建webpack运行打包项目(未完待续)
这些天在项目之余的时间学习了webpack打包项目的东西,非常荣幸的找到一些大神的文章来学习,死劲嚼了几天,终于略知一二.在以后的工作上还需继续学习,下面我将分享我这几天学到的一点东西,希望能让我一个 ...
- 浅析JavaScript的字符串查找函数:indexOf和search
语法 ①indexOf:方法可返回某个指定的字符串值在长字符串中首次出现的位置.如果被查找字符串没有找到,返回-1. indexOf 说明:该方法将从头到尾地检索字符串 stringObject,看它 ...
- Asp.Net Web API中使用Session,Cache和Application的几个方法
在ASP.NET中,Web Api的控制器类派生于ApiController,该类与ASP.NET的Control类没有直接关系,因此不能像在Web MVC中直接使用HttpContext,Cache ...
- JavaScript中函数function fun(){}和 var fun=function(){}的区别
function fun(){} 和 var fun=function(){}的区别 标题有点长···· 废话少说,其实他们的主要区别就是"函数声明的提前行为". var fun= ...
- 转换函数TO_CHAR,TO_DATE,TO_NUMBER
TO_CHAR:将日期.数字转为字符串. TO_DATE:将字符串转为日期(注:无数字转日期). TO_NUMBER:将字符串转为数字(注:无日期转数字).此函数作用不大,算术运算时Oracel会自动 ...
- 【python】列表
>>> mix = [2,3.4,"abc",'中国',True,['ab',23]]>>> mix[2, 3.4, 'abc', '中国', ...
- iOS voip电话和sip软电话 --网络电话
一|介绍1.两者区别: SIP软电话与IP电话在技术上属于同一类型,只是SIP软电话是使用电脑软件实现的,而IP电话有一部分是在话机中直接写入了程序,可以通过硬件直接使用.IP(简称VoIP,源自英语 ...
- C++ 知识点总结复习
C++ 1.C++是静态类型语言,使用静态类型的编程语言是在编译时执行类型检查,而不是在运行时执行类型检查. 2.面向对象程序设计 C++ 完全支持面向对象的程序设计,包括面向对象开发的四大特性: 封 ...
- ToolStrip和MenuStrip控件簡介及常用屬性(转)
ToolStrip和MenuStrip實際上是相同的控件,因為MenuStrip直接派生於ToolStrip.也就是說ToolStrip可以做的工作,MenuStrip也能完成. ToolStrip( ...
- kendo ui grid选中行事件,获取combobox选择的值
背景: 以前用 telerik ui做的grid现在又要换成kendo ui,不过说句实话kendo ui真的比telerik好多,可以说超级升级改头换面.当然用的mvc的辅助方法,以前的teleri ...