我認爲這會工作,但事情必須改變(或我有某種錯誤的)讓所有gradle這個子項目「測試」任務取決於rootproject「設置」任務
What is the syntax for a gradle subproject task depending on a parent project's task?
我有以下任務在根級(即在子項目關閉之外和所有項目關閉之外)。
task deleteJavaCache {
doLast {
System.out.println("DELETE java caches here to prevent intermitten build failures from java deleting files")
}
}
test.dependsOn rootProject.deleteJavaCache
test{
beforeTest{ descr ->
logger.warn("Starting Test ${descr.className} : ${descr.name}")
}
...
我得到的錯誤是
A problem occurred evaluating root project 'webpieces'.
> Could not get unknown property 'deleteJavaCache' for root project
'webpieces' of type org.gradle.api.Project.
然後我猜到了一些東西,包括這一個
test.dependsOn rootProject.task('deleteJavaCache')
但給我的錯誤
* What went wrong:
A problem occurred evaluating root project 'webpieces'.
> Cannot add task ':deleteJavaCache' as a task with that name already exists.
版本信息因此是
------------------------------------------------------------
Gradle 4.1-milestone-1
------------------------------------------------------------
Build time: 2017-06-20 17:05:46 UTC
Revision: 3ad5af92d482b963cc6b00fb5ad53b608606d657
Groovy: 2.4.11
Ant: Apache Ant(TM) version 1.9.6 compiled on June 29 2015
JVM: 1.8.0_111 (Oracle Corporation 25.111-b14)
OS: Mac OS X 10.11.6 x86_64
你可以試試'rootProject.tasks ['deleteJavaCache']'? –
@ lu.koerfer關閉!但它錯誤地出現了「在項目'webpieces'中找不到名爲'deleteJavaCache'的任務。」這很奇怪,因爲我在後文中定義了它,這是我定義其他新目標的方式。 –
哦,從那以後我嘗試了一個我用來釋放的全局任務,名爲uploadArchives2,它說不存在,這肯定不是真的,因爲我的發佈會中斷。 –