如何升级Gradle?


40

这表明Gradle是最新的:

thufir@doge:~$ sudo apt install gradle
Reading package lists... Done
Building dependency tree       
Reading state information... Done
gradle is already the newest version (2.10-1).
0 upgraded, 0 newly installed, 0 to remove and 629 not upgraded.

如何升级到Gradle4.x?最好使用umake而非SDKMAN!这似乎是他们的建议

(由于连接缓慢,我不想更新所有软件包。)

Answers:


77

您可以将ppa用作几乎始终最新的版本

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

SDKMAN以获取最新版本

curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"
sdk install gradle

PPA的优点

  • 与系统自动更新
  • 没有将下载脚本传递到外壳的管道

sdkman的优点:gradle自己提供的最新版本。


在运行我错误upgrade gradleThe following packages have unmet dependencies. powershell : Depends: liblttng-ust0 but it is not installed。我要运行这个sudo apt-get -f install然后sudo apt-get -f install gradle。这样,它将删除前一个,并从头开始安装最新的。
阿努姆·谢拉兹

@AnumSheraz:powershell完全在另一个存储库中。它与gradle无关。但这似乎sudo apt-get -f install解决了它的问题。
serv-inc

1
你是救星。我的gradle版本是2,并抛出该异常:gradle无法应用插件ID'com.google.protobuf'。更新gradle之后,问题消失了。谢谢。
kodmanyagha

1
该PPA不提供最新的Gradle。现在我的Gradle版本是5.2(通过安装apt),而5.3.1可以从官方网站下载。
naXa

2
@naXa:如果您真的需要最新的,请查看更新。您将错过自动更新。
serv-inc

12

您还可以告诉Gradle使用Gradle包装器进行自我更新。

首先创建包装器,然后告诉它使用您选择的Gradle版本:

gradle wrapper
./gradlew wrapper --gradle-version 4.9

现在,该项目将使用Gradle 4.9,与安装的项目无关。但是,您需要记住在包装器中运行Gradle,即运行./gradlew而不是plain gradle

包装器使您可以轻松地使用不同的Gradle版本进行不同的项目。

当您将创建的包装器提交给源代码管理时,签出项目的每个人都将使用相同的Gradle版本。当Gradle版本之间发生某些变化时,这对于不兼容的构建脚本有很大帮助。


0

https://gradle.org/releases/下载

根据选择一个仅二进制链接

v4.10.3

2018年12月5日

下载:仅二进制文件或完整文件

扩展下载后,只需更新PATH env var即可拾取此新二进制文件

vi ~/.bashrc  # or where ever your shell's env vars are defined

并将以下行添加到〜/ .bashrc的底部

#   replace ~/src/gradle-4.10.3/bin with your location
export PATH=~/src/gradle-4.10.3/bin:$PATH

通过发布确认此作品

source ~/.bashrc
gradle --version
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.