gradlew wrapper update to new version error that you have old version

gradlew wrapper update to new version error that you have old version

为什么 gradle 构建失败:

 ./gradlew wrapper --gradle-version 6.2

FAILURE: Build failed with an exception.

* Where:
Build file '/home/yburtsev/IdeaProjects/spring-io-testcontainers-workshop/build.gradle' line: 3

* What went wrong:
An exception occurred applying plugin request [id: 'org.springframework.boot', version: '2.2.4.RELEASE']
> Failed to apply plugin [id 'org.springframework.boot']
   > Spring Boot plugin requires Gradle 4.10 or later. The current version is Gradle 4.4.1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 0s

我手动将 gradle-wrapper.properties 中的 distributionUrl 编辑为 6.2 版本,然后 运行 gradlew wrapper 命令成功。

link 到项目:https://github.com/bsideup/spring-io-testcontainers-workshop

wrapper任务将运行与之前版本Gradle优先。在您的情况下,这显然是 4.4.1。我不知道为什么它会评估包装器任务的整个项目构建,但它确实如此。由于您使用的插件与该版本不兼容,因此失败。

正如您已经做的那样,可以通过手动编辑文件 gradle/wrapper/gradle-wrapper.properties 并将其设置为新版本来规避。但是记得在你完成之后再次 运行 包装器任务。这将使其下载新版本并在需要时使用它来更新其他包装文件。

这个问题有对应的Github问题。如果你喜欢,你可以去放一个"thumbs up"给它更多的关注:https://github.com/gradle/gradle/issues/884.