2014-06-10 41 views
1

我看到,當我在gradle中使用不同於'org.gradle'的包名創建自定義任務類型時,我無法直接在類型名稱的構建文件中聲明該任務。我需要給任務的全名gradle與包名稱的定製任務

如果包是「foo.bar」然後

task blockC(type: TestNGBlock) { 
    testngxml = "tests/testng-lrga-blockC.xml" 
} 

犯規的工作。我需要如下寫:

task blockC(type: foo.bar.TestNGBlock) { 
    testngxml = "tests/testng-lrga-blockC.xml" 
} 

有沒有辦法像在Java中,進口在那裏我可以指定搖籃包名尋找到解決的類型,所以我可以使用以前的方法來定義任務。

回答

4

是的。導入build.gradle的作品與純java類完全相同。

import foo.bar.TestNGBlock 

task blockC(type: TestNGBlock) { 
    testngxml = "tests/testng-lrga-blockC.xml" 
} 
+1

如果您使用插件傳送這些任務,則可以使用解決方法來執行project.ext.TestNGBlock = foo.bar.TestNGBlock。這樣,如果您在項目中應用該插件,則不需要導入語句 –