2016-07-14 84 views
3

我是新来的gradle,并且出现一个构建错误,我不太明白。我的项目只是一个空目录结构,没有Java源代码。这里是我的根的build.gradle文件使用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方法与此消息构建失败:

找不到方法testCompile( )在根项目上的参数[{group = junit,name = junit,version = 4. +}]

我使用Gradle 2.5。

我明白这个方法是我加载的java插件的一部分。我看不出什么地方出了问题,你能帮忙吗? Thx!

+0

依赖关系块可能属于子项目块内,是吗? – dnault

+0

这是抱怨testCompile不存在,因为你没有应用'java'插件* this * build文件。 – dnault

+0

正如我已经说过的,我是新来的gradle,所以如何将java插件应用到此构建文件? –

回答

3

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.+' 
    } 
} 
0

这是说,它无法找到参数的方法testCompile检查你拼写正确,确保你有“junit”的名称和组都是正确的,也是版本正确的另一个修复此问题是在子项目块中添加testCompile行。