如何在IntelliJ IDEA中更改“默认gradle包装器”的版本?


94

我想使用Gradle 1.10而不是1.9。我似乎找不到改变它的地方。

如果我这样说:

task wrapper(type: Wrapper) {
    gradleVersion = '1.10'
}

在我的build.gradlerebuild中,它再次使用Gradle 1.9构建(因此实际上什么也没发生)。

这些似乎是所有设置:(并且IntelliJ的有关Gradle帮助部分根本没有帮助:() “当前未配置”项目是什么意思?


1
gradle(w) wrapper更改后是否重新生成了包装器gradleVersion
Peter Niederwieser 2014年

2
尝试过以下方法:stackoverflow.com/questions/24460299/…只需删除包装器文件,然后wrapper再次执行任务
结束

无需删除任何文件。
Peter Niederwieser 2014年

1
Gradle任务可以从IntelliJ运行,因此您也应该能够运行wrapper任务。另外,也许这就是“使用可定制的gradle包装器”的含义(但我不确定)。
Peter Niederwieser 2014年

1
谢谢大家的帮助,我设法通过更改为可自定义的Gradle包装器并通过执行wrapper任务来重新生成包装器来使其工作。不过,我仍然对默认的Gradle包装器实际上是什么感到困惑。
Bloke

Answers:


111

最简单的方法是从命令行执行以下命令(请参阅文档中的升级Gradle包装器):

./gradlew wrapper --gradle-version 5.5

此外,您可以使用--distribution-type带有binall值的参数来选择分布类型。使用all分发类型以避免IntelliJ IDEA或Android Studio的提示,该提示将为您提供下载Gradle的源代码:

./gradlew wrapper --gradle-version 5.5 --distribution-type all

或者您可以创建一个自定义wrapper任务

task wrapper(type: Wrapper) {
    gradleVersion = '5.5'
}

然后跑./gradlew wrapper


2
如果在包含子项目的根项目中运行./gradlew :wrapper任务,请在任务名称之前使用冒号运行。
菲利普(Philippe)

36

gradle/wrapper/gradle-wrapper.properties在您的项目中打开文件。更改中的版本distributionUrl以使用您要使用的版本,例如,

distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip

4
最好使用为此目的创建的gradle任务,以便脚本正确更新,等等
。– dabluck

他们还会更新其二进制文件和脚本,除非您运行更新任务,否则您不会获得它们。这可能会导致不兼容问题
dabluck

1
是的 请参阅Gradle文档中的升级Gradle包装器
Lu55

3

我只是想补充一下,在更新Android Studio组件后点击了此按钮。

对我有用的是打开gradle-wrapper.properties并更新使用的gradle版本。到目前为止,对于我的项目,该行显示为:

distributionUrl=https\://services.gradle.org/distributions/gradle-4.5-all.zip

3

./gradlew wrapper --gradle-version=5.4.1 --distribution-type=bin

https://gradle.org/install/#manually

去检查:

 ./gradlew tasks

不用命令输入:

转到-> gradle/wrapper/gradle-wrapper.properties 分发网址,并将其更改为更新的zip版本

输出:

 ./gradlew tasks
Downloading https://services.gradle.org/distributions/gradle-5.4.1-bin.zip
...................................................................................

Welcome to Gradle 5.4.1!

Here are the highlights of this release:
 - Run builds with JDK12
 - New API for Incremental Tasks
 - Updates to native projects, including Swift 5 support

For more details see https://docs.gradle.org/5.4.1/release-notes.html

Starting a Gradle Daemon (subsequent builds will be faster)

> Starting Daemon 


1

如果使用gradlew命令,则会调用gradle中的'wrapper'任务,如果不使用gradle命令来构建wrapper任务,则将调用gradle中的'wrapper'任务。因此,有两种方法可以更改Gradle版本。

  1. 使用“ gradlew build”命令,此命令将调用您提到的包装器任务。该任务将更改gradle-wrapper.properties文件中的'distributionUrl'参数,并将自动下载所需的gradle版本。版本4.2的文件中的示例distributionUrl。distributionUrl = https://services.gradle.org/distributions/gradle-4.2-bin.zip

  2. 如果不使用gradle包装器,则只需下载所需的gradle版本并设置环境变量路径,然后将其显示给IDEA。

PS有关gradle包装器的更多信息,我建议您阅读:https ://docs.gradle.org/current/userguide/gradle_wrapper.html


1

我面临将默认gradle版本从5.0更改为4.7的相同问题,以下是在intellij中更改默认gradle版本的步骤 1)在此属性distributionUrl中的gradle / wrapper / gradle-wrapper.properties中更改gradle版本 2)单击刷新按钮在gradle项目菜单中,以便它将开始下载新的gradle zip版本在此处输入图片说明



0

首先,让gradle设定正确的分配网址

cd projectDirectory
./gradlew wrapper --gradle-version 2.3.0

然后-可能不需要,但这就是我所做的-编辑项目的build.gradle以匹配版本

    dependencies {
    classpath 'com.android.tools.build:gradle:2.3.0'

    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}

最后,删除文件夹.gradle和gradle以及文件gradlew和gradlew.bat。(原始答案

现在,重建项目。

由于其他答案对我来说不够用,因此指出这些额外步骤的评论很容易被忽略,这里作为单独的答案

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.