Ecco cosa funziona per me a partire da Gradle 4.0.
sourceSets {
integrationTest {
compileClasspath += sourceSets.test.compileClasspath
runtimeClasspath += sourceSets.test.runtimeClasspath
}
}
task integrationTest(type: Test) {
description = "Runs the integration tests."
group = 'verification'
testClassesDirs = sourceSets.integrationTest.output.classesDirs
classpath = sourceSets.integrationTest.runtimeClasspath
}
A partire dalla versione 4.0, Gradle ora utilizza directory di classi separate per ogni lingua in un set di sorgenti. Quindi, se il tuo script di build utilizza sourceSets.integrationTest.output.classesDir
, vedrai il seguente avviso di deprecazione.
Gradle ora utilizza directory di output separate per ogni linguaggio JVM, ma questa build presuppone una singola directory per tutte le classi da un set di origini. Questo comportamento è stato deprecato ed è pianificato per essere rimosso in Gradle 5.0
Per eliminare questo avviso, passa sourceSets.integrationTest.output.classesDirs
invece a. Per ulteriori informazioni, vedere le note sulla versione di Gradle 4.0 .
java/withIntegrationTests
esempio nella distribuzione completa di Gradle.