我创建ionic 2项目,并添加诊断cordova插件,如下所示:

ionic plugin add cordova.plugins.diagnostic

npm install --save @ionic-native/diagnostic

并像这样添加android平台:

ionic platform add android@latest

但当构建与ionic构建android控制台给我这个错误:

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.3.3-all.zip,并在platform/android/cordova/lib/builders/GradleBuilder.js中更改这个distributionUrl变量

 var distributionUrl = process.env['CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL'] || 'https\\://services.gradle.org/distributions/gradle-3.3-all.zip'

to:

var distributionUrl = process.env['CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL'] || 'file:///E:/gradles/gradle-3.3-all.zip';

但不工作和控制台给我最后一个错误。

我不知道如何为android@latest版本添加gradle


当前回答

从https://gradle.org/install下载最新的gradle,在你的path变量中设置gradle路径为bin,并在你工作的目录中导出路径

例如export PATH=/home/abc/android-sdk-linux/tools:/home/abc/android-sdk-linux/platform-tools:/home/abc/android-sdk-linux/tools:/home/abc/android-sdk-linux/platform-tools:/home/abc/Downloads/gradl -4.4.1/bin

我花了一整天的时间来解决这个问题,最终这个解决方案对我有效,

其他回答

如果您的gradle之前工作正常,出现这个问题(可能是在您升级或重新安装ionic或cordova之后——就像我的情况一样),您可能希望保持环境变量不变,并检查那里列出的文件夹是否实际存在。

如果它没有,而不是像上面提到的那样重新安装gradle并改变环境变量的值,我必须重新创建旧的丢失的文件夹并将gradle文件复制到其中。

gradle位置的值似乎保存在Android Studio的某个地方,在系统变量中更新PATH并不影响Android Studio在某些东西触发更改后检查相同的位置。

cordova 6.4.0版本和android 6.2.1版本有问题,请尝试以下兼容版本

Cordova版本必须为6.4.0

Sudo NPM install -g cordova@6.4.0

在你的项目中安装android

Sudo cordova平台加android@6.1.2

 or

Sudo离子平台加android@6.1.2

windows用户:

从答案gradle Download中的链接下载gradle二进制文件

将压缩文件解压到“C:\Gradle”或其他地方

打开编辑环境变量对话框从开始菜单>搜索

点击“系统变量”下的“新建”,如下所示添加

变量名GRADLE_HOME变量值C:\Gradle\ Gradle -4.0.1

然后从系统变量列表中选择PATH变量

将gradle路径附加到如下的变量值C:\ gradle \gradle-4.0.1\bin

然后按win键+R输入cmd然后在命令终端输入> gradle -v

如果设置正确,您将看到gradle安装细节

首先卸载ionic和cordova,然后设置你的变量环境JAVA_HOME, ANDROID_HOME和PATH,然后重新安装ionic cordova并添加如下平台:

$ sudo npm install -g ionic cordova

$ ionic platform add android

离子会正确地安装gradle包装。

brew install gradle

简而言之,这将节省时间:)Ionic团队请解决这个问题