2017-07-19 111 views
0

應用插件: '基地'搖籃測試任務:找不到

gradle這個任務

Verification tasks 
------------------ 
check - Runs all checks. 
test - Runs the unit tests. 

配置測試任務

test { 
    dependsOn bar 
} 

錯誤

Could not find method test() for arguments 
[[email protected]] 
on root project 'foo' of type org.gradle.api.Project. 
+0

確定'./gradlew --all'任務或'gradle這個任務--all'給你'test'任務?它爲我拋出了錯誤。 – chenrui

+0

是的。它包含測試任務。我正在使用gradle 4.0 – Sunnyday

回答

1

Gradle doc,它說:

添加的標準生命週期任務和配置合理的默認 存檔任務:

  • 加建ConfigurationName任務。這些任務組裝了屬於指定配置的工件。
  • 增加了上傳ConfigurationName任務。這些任務彙編並上載屬於指定配置的工件。
  • 所有歸檔任務(從AbstractArchiveTask繼承例如任務)配置合理的默認值。

正如你所看到的,沒有測試任務,您還可以驗證在source code

public void apply(Project project) { 
    project.getPluginManager().apply(LifecycleBasePlugin.class); 

    BasePluginConvention convention = new BasePluginConvention(project); 
    project.getConvention().getPlugins().put("base", convention); 

    configureBuildConfigurationRule(project); 
    configureUploadRules(project); 
    configureUploadArchivesTask(); 
    configureArchiveDefaults(project, convention); 
    configureConfigurations(project); 
    configureAssemble((ProjectInternal) project); 
} 

因此,test任務,你正在尋找的是在任一「時髦」( Groovy插件包含Java插件)或 'Java' 作爲插件Gradle doc

> gradle build 
:compileJava 
:processResources 
:classes 
:jar 
:assemble 
:compileTestJava 
:processTestResources 
:testClasses 
:test 
:check 
:build 

BUILD SUCCESSFUL 

Total time: 1 secs 

讓我知道,如果這是有道理的。

+0

測試任務來自一個子項目(應用java插件),我相信。 – Sunnyday

+0

@Sunnyday,那麼你應該可以像這樣運行'./gradlew:subProject:test' – chenrui