当前位置: 首页 > 面试题库 >

找不到参数Gradle的方法compile()

岑叶秋
2023-03-14
问题内容

现在,寻找这种解决方案的时间已经太久了,我不确定是错过了还是只是输错了什么,但是我的Gradle脚本无法编译。我正在迁移到Gradle,并且对它很陌生。我已经非常习惯于使用Maven进行依赖管理,但是Gradle似乎对我来说最好。通过运行以下代码段:

dependencies {
  compile group: 'org.bukkit', name: 'bukkit', version: '1.7.9-R0.1-SNAPSHOT'
  compile('io.ibj:MattLib:1.1-SNAPSHOT') {
    exclude group: 'de.bananaco'
    exclude 'net.milkbowl:vault:1.2.27'
  }
  compile group: 'net.citizensnpcs', name: 'citizens', version: '2.0.12'
  compile group: 'com.sk89q', name: 'worldedit', version: '5.6.1'
  compile group: 'com.sk89q', name: 'worldguard', version: '5.9'
  compile group: 'net.milkbowl', name: 'vault', version: '1.2.12'
  compile fileTree(dir: 'libs', includes: ['*.jar'])
}

注意:我确实应用了java,maven,nexus,shadow和rebel插件。

当我运行Gradle任务时,会遇到此错误:

Could not find method compile() for arguments [[io.ibj:MattLib:1.1-SNAPSHOT], build_1b5iofu9r9krp7o8mme0dqo9l$_run_closure2_closure8@66fb45e5] on root project 'project'

如果我从项目中删除“ MattLib”依赖项,然后将其重新插入为

compile 'io.ibj:MattLib:1.1-SNAPSHOT'

该脚本已完成,但是我有依赖性问题。我在这里阅读:

dependencies {
  compile("org.gradle.test.excludes:api:1.0") {
    exclude module: 'shared'
  }
}

(摘自Gradle手册第50章,http://www.gradle.org/docs/current/userguide/dependency_management.html)

我应该工作的东西,但是我很困惑为什么没有。

gradle –version输出:

Groovy:       1.8.6
Ant:          Apache Ant(TM) version 1.9.3 compiled on December 23 2013
Ivy:          2.2.0
JVM:          1.8.0_05 (Oracle Corporation 25.5-b02)
OS:           Windows 7 6.1 amd64

有什么想法吗?


问题答案:

它应该是exclude module: 'net.milkbowl:vault:1.2.27'(ADD
module:)为文档解释了DependencyHandler来自链接http://www.gradle.org/docs/current/javadoc/org/gradle/api/Project.html#dependencies(groovy.lang.Closure)因为ModuleDependency.exclude(java.util.Map)方法是用过的。



 类似资料: