ChatGPT解决这个技术问题 Extra ChatGPT

ionic 2 - 错误在 Android Studio 中也找不到安装的 Gradle 版本

我创建了 ionic 2 项目并添加了这样的诊断 cordova 插件:

ionic plugin add cordova.plugins.diagnostic

npm install --save @ionic-native/diagnostic

并像这样添加android平台:

ionic platform add android@latest

但是当使用 ionic build 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

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

至:

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

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

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

您是否正确安装了android sdk?
是的,这个问题通过在路径系统变量中定义 gradle 解决,但是当运行 build android 时,控制台给我:“你没有接受以下 SDK 组件的许可协议”错误
您必须安装正确的 sdk 版本(通过 android sdk manager)并接受条款。 forum.ionicframework.com/t/…
你解决了这个问题吗?我也有同样的问题
是的,我手动下载 gradle.zip 并将其包含到路径中。

A
AFD

生命太短了,不能把它花在弄乱路径等上。

因为我有 Homebrew installed on the iMac,所以我只运行了这个命令:

brew install gradle

Ionic3 项目开始构建成功。


brew update && brew install gradle -- 否则,如果 brew 需要先更新,则不会安装 gradle。
为我在没有 Ionic 的情况下运行 Cordova CLI 工作。另外,我不必像 Kit 的评论中提到的那样做双线来安装 gradle。非常高兴 - 简单的解决方案。非常感谢@AFD !!!
当您现在运行 brew install 时,@Kit brew 自动更新
“生命太短暂,不能花在搞砸 $complicated_topic 上”将是我在求职面试中的新王牌。
非常感谢.. gr8 的帮助.. 非常真实,“生命太短了,不能把它花在搞砸......”
A
Arjun G Perambra

尝试安装 gradle 并将其包含在您的路径中。单击下面的链接以获取手册。 https://gradle.org/install


谢谢!可笑的是,cordova / ionic 仍然没有解决这个问题。
如果你有 Android Studio 和一个使用 gradle 的项目,你可以找到它,例如: ~/apps/android-studio$ find 。 -type f -name gradle ./gradle/gradle-4.1/bin/gradle。抱歉标记,这是评论。因此,您可以将其添加到您的 PATH 变量中,但您需要保持安装该版本。
是的,我找到了一个,添加到路径中,它就像一个魅力,谢谢。 > 导出 PATH=$PATH:/Users/MyUser/.gradle/wrapper/dists/gradle-4.1-all/xxx/gradle-4.1/bin
不要忘记重新启动计算机(Windows)
N
Nicolas

只需在linux上安装gradle,即使安装了Android Studio,

sudo apt install gradle


n
not-a-bot

对于 Windows 用户:

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

将 zip 文件解压缩到“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 安装详细信息


我可以有 gradle 下载链接吗
从这里下载 Gradle:gradle.org/releases
A
Almas Dusal

我已经安装了 Android Studio,只需要在我的 MacOSX Mojave 上将 gradle PATH 添加到 ~/.bash_profile 即可。此外,如果升级了 gradle,则路径可能需要再次更新。

示例 .bash_profile :

export ANDROID_SDK_ROOT="~/Library/Android/sdk"
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
export JAVA_HOME=$(/usr/libexec/java_home)
export GRADLE_PATH="~/.gradle/wrapper/dists/gradle-4.10.1-all/455itskqi2qtf0v2sja68alqd/gradle-4.10.1/bin"
export ANDROID_STUDIO="/Applications/Android Studio.app/Contents/MacOS"
export PATH="$PATH:$GRADLE_PATH:$ANDROID_STUDIO"

编辑您的 .bash_profile 后,运行下面的命令再次读取它。

source ~/.bash_profile

我能够使用这种方法找到我自己的 gradle 路径并将其插入。谢谢你。
M
Maheshvirus

对于 Windows,您可以尝试以下解决方案

复制您的 gradle-->bin 路径并将其添加到 system environment variable path

在我的情况下,gradle 路径是

C:\Users\username\.gradle\wrapper\dists\gradle-3.3-all\55gk2rcmfc6p2dg9u9ohc3hw9\gradle-3.3\bin

这个解决方案对我有用。


谢谢 - 在我看来,这似乎是在您的计算机上安装另一个版本的 Gradle 更好的解决方案。
添加到路径后不要忘记启动新的 CMD 会话
我想这很明显,但是如果您在 Android Studio 中升级 Gradle,那么您将不得不重新添加路径。
M
Mohammed Safeer

在 Ubuntu 中,安装最新版本的 gradle 为我解决了这个问题。

尝试这些步骤来安装最新版本,

sudo add-apt-repository ppa:cwchien/gradle

sudo apt-get update

sudo apt-get install gradle

然后使用构建,

cordova build androidionic cordova build android

注意:如果您从 ubuntu repo 安装 gradle,它将安装旧版本 1.4 并且无济于事,因此如果您没有添加 repo,sudo apt-get install gradle 在大多数情况下不会有帮助ppa:cwchien/gradle早些时候


V
Veerendra Borra

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

科尔多瓦版本必须是 6.4.0

sudo npm install -g cordova@6.4.0

在你的项目中安装 android

sudo cordova 平台添加 android@6.1.2

 or

sudo 离子平台添加 android@6.1.2


你真的不应该用 sudo 运行 npm!
如果您的系统要求权限,那么您需要使用 sudo
如果设置正确,则不需要权限。您下载可以自动执行的不受信任的代码。这不应该通过提升的权限来完成!请参阅docs.npmjs.com/getting-started/fixing-npm-permissions
只需将此行 sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share} 粘贴到第一个命令之前并删除 sudo
M
Madhup Singh Yadav
brew install gradle

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


J
Joe

在 Ubuntu 18.04 上,我安装了 gradle:

sudo add-apt-repository ppa:cwchien/gradle
sudo apt-get update
sudo apt-get install gradle

和准备好了。


你真的需要 Ubuntu 18.04 的第一行吗?
你好,乔,好问题,在 Ubuntu 存储库中,版本是 3.4.1,但在存储库 ppa:cwchien/gradle 中,版本是 5.0。不是真的需要使用第一行,但安装最后一个版本很重要。
G
Gandhi

如果您不想显式安装 gradle 来解决此问题,则可以通过以下解决方法来解决此问题:

在platforms\android\cordova\lib 文件夹下查找check_reqs.js 文件在get_gradle_wrapper 函数中编辑androidStudioPath 变量null 检查的else 部分,如下所示:

现有代码:

else { //OK,让我们尝试检查 Gradle! return forgivingWhichSync('gradle'); }

修改后的代码:

else { //OK,让我们尝试检查 Gradle! var sdkDir = process.env['ANDROID_HOME']; return path.join(sdkDir, 'tools', 'templates', 'gradle', 'wrapper', 'gradlew'); }

注意:每次删除并重新添加 android 平台时都需要进行此更改

更新: 上述解决方法在 Cordova Android 版本 6.3.0 之前都可以正常工作。对于 Cordova Android 6.4.0 及更高版本,Gradle 需要作为独立依赖项安装。有关这方面的更多信息,请查找 Cordova Android 6.4.0 release notes


有人可以让我知道为什么这个答案被否决了吗?
它没有解决问题,安装gradle并设置路径
@rashidnk 已经在我的科尔多瓦 CLI 中尝试过它,并且在此调整后它可以工作。你能解释一下你尝试了什么,什么失败了吗?
好的,但是我不赞成,我尝试了您的解决方案,但是在安装 gradle 并设置路径变量之后它起作用了
@rashidnk 看看答案被接受的地方 - stackoverflow.com/questions/43356833/…
Q
Quezako

对于 Windows 用户:

Set-ExecutionPolicy RemoteSigned -scope CurrentUser
iex (new-object net.webclient).downloadstring('https://get.scoop.sh')
scoop install gradle

R
Regolith

我在 Microsoft Windows 上:

在将 Android Studio 从 2.3.3 升级到 3.0 后,我遇到了这个错误。我通过在 PATH 环境变量中更改 gradle 的路径来解决它,现在对于 Android Studio 3.0 是“gradle-4.1”(以前对于 Android Studio 2.3.3 是“gradle-3.2”)


K
Kuldeep Kumar

只需通过命令行安装 Gradle 如果您使用的是 Mac,请尝试

brew install gradle

M
Metin SEVİNDİK

我将 Android 文件夹路径移动到另一个路径并出现此错误。

我在下面解决了这个问题。

我在系统变量中更改为 Gradle 路径。但不是用户变量中的路径。您必须更改为系统变量中的路径

Screenshot this

Alternative Screenshot this


A
Amadeus Sánchez

我想在这次谈话中加两分钱。如果您是 Windows 用户,您想利用 Chocolatey

根据 https://community.chocolatey.org/packages/gradle,您需要在控制台中运行(假设您已经安装了 Chocolatey)。

choco install gradle

如果您尚未安装 Chocolatey,请按照 https://chocolatey.org/install 中的说明进行操作


P
Peter Tretyakov

我解决了这个问题

从此站点 https://gradle.org/install 下载 gradle.zip。并按照网站上的说明进行操作。

然后打开另一个终端cmd并执行命令:

Cordova build android --prod --release
End

S
Silas Brasil

首先卸载 ionic 和 cordova,然后设置变量环境 JAVA_HOMEANDROID_HOMEPATH,然后重新安装 ionic cordova 并添加平台,如下所示:

$ sudo npm install -g ionic cordova

$ ionic platform add android

离子将正确设置 gradle 包。


我的编辑被拒绝...所以我作为评论发布:在您的代码的第一行中 sudo 之后缺少 npm 关键字。
M
Marcelo Agimóvel

在 Arch Linux/Manjaro 中:sudo pacman -S gradle


A
Ajoy Karmakar

只需安装 android studio 并选择您的 sdk 文件夹作为 android studio 的 sdk 默认文件夹,然后 android studio 修复所有损坏区域并下载所需文件。


M
Mandeep Singh

https://gradle.org/install 下载最新的 gradle 并将 gradle 路径设置为 PATH 变量中的 bin 并在您正在工作的目录中导出路径

示例:导出 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/gradle-4.4.1/bin

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


C
Cedric Ipkiss

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

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

似乎 gradle 位置的值保存在 Android Studio 中的某个位置,并且更新系统变量中的 PATH 不会影响 Android Studio 在触发更改后检查同一位置。