Cannot add task wrapper as a task with that name already exists - 问题解决

2020-06-02 15:53:24 浏览数 (1)

问题描述

项目使用 ./gradle build 去打包,报错 Cannot add task 'wrapper' as a task with that name already exists ,使用 ./gradle clean,同样报错,使用linux服务器。

代码语言:javascript复制
Configuration on demand is an incubating feature.

FAILURE: Build failed with an exception.

* Where:
Build file '/root/xxx/build.gradle' line: 1

* What went wrong:
A problem occurred evaluating root project 'xxx'.
> Cannot add task 'wrapper' as a task with that name already exists.

* 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

解决方法

Cannot add task 'wrapper' as a task with that name already exists,这个报错是因为执行 gradle wrapper 失败,而 gradle wrapper 作用是生成 gradlew 执行文件,生成后通过 gradlew 来执行 gradle 的操作。如果 gradlew 已经生成,就会报这个错误。

改执行 ./gradlew build 成功。

反思

这个简单的问题,我一直没有解决,因为我们有 build.sh 可以自动化打包,对这个报错习以为常,导致我认为这个问题很艰难,很难解决。这次 build 失败需要 clean 操作导致我必须去面对这个问题,而思想的惯式让我认为这个问题不可解决,于是去寻求别的解决方式,做了大量无用功。归根原因在于对项目的技术不深入了解,抱着能跑起来,能开发就行的心态。遇到问题还是要去解决,而不是想着规避,规避多了会自我设置障碍,认为问题无法解决。问题多了,开发流程变得像黑盒一样,一遇见问题就太难解决了,只能做重复搬砖工。

0 人点赞