Aqui está o que funciona para mim a partir do 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 partir da versão 4.0, o Gradle agora usa diretórios de classes separados para cada idioma em um conjunto de origem. Portanto, se o seu script de construção usar sourceSets.integrationTest.output.classesDir
, você verá o seguinte aviso de descontinuação.
O Gradle agora usa diretórios de saída separados para cada linguagem JVM, mas esta construção assume um único diretório para todas as classes de um conjunto de origem. Este comportamento foi preterido e está programado para ser removido no Gradle 5.0
Para se livrar desse aviso, basta alternar para sourceSets.integrationTest.output.classesDirs
. Para obter mais informações, consulte as notas de versão do Gradle 4.0 .
java/withIntegrationTests
amostra da distribuição completa do Gradle.