现在寻找这个解决方案太久了,我不确定我是错过了它还是只是输入了错误的东西,但是我的 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'
}
}
(来自第50章来自the Gradle Manual)
我所拥有的应该可以工作,但我很困惑为什么它不工作。
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
最佳答案
注意Java插件引入的compile
、runtime
、testCompile
和testRuntime
配置已经已弃用 Gradle 4.10 ( Aug 27, 2018 ),并最终在 Gradle 7.0 中被删除(Apr 9, 2021)。
上述配置应分别替换为implementation
、runtimeOnly
、testImplementation
和testRuntimeOnly
。
关于java - 找不到参数 Gradle 的方法 compile(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23796404/