Gradle 多个版本的 GRADLE

Posted

技术标签:

【中文标题】Gradle 多个版本的 GRADLE【英文标题】:Gradle multiple versions OF GRADLE 【发布时间】:2017-06-30 12:28:52 【问题描述】:

为了清楚起见:这不是关于多个版本的依赖项,而是关于 Gradle 自己的 jar 的多个版本。

我认为this 可能有答案...但没有答案!

这是 Gradle 2.14,带有 Windows 10 操作系统。

我发现 gradle 一直在为这个项目在“.gradle\”目录下构建一个新目录:在合法的“2.14\”目录旁边,它一直在构建一个“2.2.1\”目录。

我查看了安装 Gradle 的目录:令人费解的是,我发现了多个版本的 Gradle jar 文件:不仅是 2.14,还有 2.13、1.7,是的,还有 2.2.1..

所以我决定手动删除2.2.1。罐子。它停止构建“虚假”​​2.2.1 目录。

有人能告诉我 Gradle 是如何决定它使用哪个版本的吗?我真的很想摆脱那些非 2.14 的 jar,并找到一种方法来防止其他版本以某种方式重新出现!

【问题讨论】:

gradle docs 建议将 gradle 包装器与源代码一起保留,以保证项目的用户始终使用预期的版本。您可以通过执行gradle wrapper 对其进行初始化。之后,可以将 IDE 配置为始终使用 gradle 包装器或在控制台上使用 gradlew 感谢您的指点。我会仔细阅读。 【参考方案1】:

谁能告诉我 Gradle 是如何决定它使用哪个版本的?

这取决于你如何调用 gradle。

方法 1.gradle 命令将调用 GRADLE_HOME 路径中的 gradle 版本。

方法二。使用gradle wrapper

gradlew 命令将调用在项目的gradle\wrapper\gradle-wrapper.properties 文件中配置的 gradle 版本(如果它已经存在)。如果不是,you can create itgradle wrapper --gradle-version 3.3。现在,当您使用 gradlew 时,它将始终使用 gradle 版本 3.3。

建议使用 gradle wrapper,这样您就可以在安装的 gradle 版本可能不同的不同机器上,甚至在未安装 gradle 的机器上一致地重现相同的构建,因为 gradlew.bat 和 gradlew 将用于windows 和 linux 分别用于引导构建。

您在 .gradle 目录中发现多个版本的 gradle 的原因可能是因为之前您可能尝试使用这些版本构建 gradle。

【讨论】:

以上是关于Gradle 多个版本的 GRADLE的主要内容,如果未能解决你的问题,请参考以下文章

什么是真正的 Android Studio Gradle 版本?

Gradle初体验

Gradle 入门

Android studio 目录结构

Gradle 之初相识

Gradle安装及idea创建Gradle工程