Gradle - 找不到 wrapper() 方法 - 依赖项目

11

我的项目结构如下所示:

-Main dir
  - .gradle-wrapper
  |  - gradle-wrapper.jar
  |  - gradle-wrapper.properties
  |
  - projects
     - library
     - library-consumer

librarylibrary-consumer 中,我都有一个包含以下内容的 build.gradle 文件:

wrapper {
    jarFile = "${project.projectDir}/../../.gradle-wrapper/gradle-wrapper.jar"
    gradleVersion = '4.8.1'
}

另外,在项目library-consumer中,我在build.gradle文件中将依赖项设置为library项目。

compile project(':library')

我已按照这里所说,在library-consumersettings.gradle中引入了library

include ':library'
project(':library').projectDir = new File("../library")

当我尝试执行gradle build时,我收到以下错误:

Could not find method wrapper() for arguments [build_7cibagmqy9u5sctvqdtah2a8p$_run_closure1@134371ea] on project ':library' of type org.gradle.api.Project.

有什么建议/解决方案吗?这两个项目都已经将包装器的路径更改为以下内容:

任何建议/解决方案?这两个项目都包括将包装器的路径更改为以下内容:

set CLASSPATH=%APP_HOME%\..\..\.gradle-wrapper\gradle-wrapper.jar

能够成功编译。


你有没有解决这个问题的方案? - Bahu
@Bahu 不好意思,我没有这样做。我只制作了一个“主构建”,其中包含包装器定义和子项目 :/ - Witold Kupś
1个回答

0
在 Gradle 版本 5 以下,您必须声明一个包装器任务而不是尝试配置现有任务。
请参阅升级指南此处
看起来您还没有升级到版本 5,所以您需要执行以下操作:
task wrapper(type: Wrapper) {
    jarFile = "${project.projectDir}/../../.gradle-wrapper/gradle-wrapper.jar"
    gradleVersion = '4.8.1'
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接