我是新手,我正在收到一个我不太懂的构建错误。我的项目只是一个带有目录结构的空壳,没有java源代码。这是我的root build.gradle文件
allprojects {
//Put instructions for all projects
task hello << { task -> println "I'm $task.project.name" }
}
subprojects {
//Put instructions for each sub project
apply plugin: "java"
repositories {
mavenCentral()
}
}
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.+'
}
当我执行gradle build命令时,构建失败,因为它不知道带有此消息的testCompile方法:
无法在根项目中找到参数[{group = junit,name = junit,version = 4. +}]的方法testCompile()
我使用的是Gradle 2.5。
我知道这个方法是我加载的java插件的一部分。我没看到出了什么问题,你能帮忙吗? 谢谢!
答案 0 :(得分:13)
如果有人因为 Could not find method testCompile()
错误来到这里,那么现在更有可能的原因是您需要用 testCompile
替换已弃用的 testImplementation
。
见What's the difference between implementation and compile in Gradle?
答案 1 :(得分:5)
java插件仅适用于子项目,因此java插件添加的testCompile配置只能在子项目中使用。以下作品:
allprojects {
//Put instructions for all projects
task hello << { task -> println "I'm $task.project.name" }
}
subprojects {
//Put instructions for each sub project
apply plugin: "java"
repositories {
mavenCentral()
}
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.+'
}
}
答案 2 :(得分:0)
它说它无法找到方法testCompile的参数检查你拼写正确,确保你拥有的“junit”的名称和组都是正确的,并且版本是正确的另一个修复此问题在子项目块中添加testCompile行。