我知道有很多类似的问题,但我没有找到一个解决我的问题在任何一个。另外,我会提供我的具体情况。

我在Ubuntu 16.04 LTS中编写了一个Ionic项目,现在我必须为发布构建它。所以我运行命令:

cordova build --release android

然后我看到下面的错误:

Error: Could not find gradle wrapper within Android SDK. Might need to update your Android SDK.
Looked here: /home/user/Android/Sdk/tools/templates/gradle/wrapper

我没有这个templates/gradle/wrapper目录。 我的Android Studio是2.3,是目前的最新版本 Android SDK平台- tools 25.0.3 Android SDK Tools 25.3.1 所有Android版本从2.1 (Eclair)到7.1.1 (Nougat)

经过广泛的研究,我把所有与Android studio相关的环境变量放在/etc/environment文件中。现在它看起来是这样的:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/game:/home/<user>/Android/Sdk:/home/<user>/Android/Sdk/tools:/home/<user>/Android/Sdk/platform-tools"

ANDROID_HOME=/home/<user>/Android/Sdk
export ANDROID_HOME

JAVA_HOME=/usr/lib/jvm/java-8-oracle
export JAVA_HOME

GRADLE_HOME=/opt/android-studio/gradle/gradle-3.2
export GRADLE_HOME

现在,为了测试环境变量,我运行以下命令:

source /etc/environment
echo $PATH
echo $ANDROID_HOME
echo $JAVA_HOME
echo $GRADLE_HOME

所有的路径变量都正确显示。

所以,它看起来像环境变量就像他们应该根据各种类似的问题和在教程中我已经搜索。有人知道我哪里做错了吗?为什么我仍然得到Gradle Wrapper错误?


当前回答

如果您的系统中安装了android studio,则从C:\Program Files\Android\Android studio \plugins\android\lib\templates中复制模板文件夹 粘贴到C:\Users\<user-name>\AppData\Local\Android\sdk\tools文件夹中 运行命令:ionic build android

所有必要的jar文件将被下载,并为应用程序生成apk文件。

备注:设置环境变量为 当地C:\Users\ <用户名> \ AppData \ \ Android sdk \ \工具。 同时将user-name设置为您当前的用户名。

其他回答

到今天为止,没有一个解决方案对我有效。我的情况是我更新了自己的Android工作室。用最新的工具文件夹替换工具文件夹这个最流行的方法对我来说行不通。在某些情况下不需要Infact。

NPM update -g cordova为我做到了。

然后我删除了平台,并重新添加。

Ionic平台移除android

Ionic平台新增android

这在爱奥尼亚行得通。我是surecordova平台删除/添加android将做同样的事情。不过还没有经过测试。

又开始工作了!

cordova升级到7.0后。X, gradle路径已经改变,如上所述。要让它在正式修复之前工作,只需手动安装gradle并将其设置在您的环境中。

去https://gradle.org/install下载二进制包 打开它,记住路径。,我的一个在:E:\Gradle 设置环境变量,比如在Windows中添加E:\Gradle\bin

就是这样。

在linux(我是Ubuntu)上只需要安装gradle:

安装gradle

编辑:似乎ubuntu repo只有gradle 2.10,更新的版本:https://www.vultr.com/docs/how-to-install-gradle-on-ubuntu-16-10

对于那些仍然有这个问题的人来说,这对我来说很有效:

    cordova platform update android@latest

然后构建,它会自动下载最新的gradle版本,应该可以工作

(基本上@user3464070已经说过了)

Mac:

cd ~/Library/Android/sdk
# download latest tools
curl -O https://dl.google.com/android/repository/tools_r25.2.3-macosx.zip
# overwrite existing tools folder without prompting
unzip -o tools_r25.2.3-macosx.zip
# clean up
rm tools_r25.2.3-macosx.zip