Đây là những gì phù hợp với tôi kể từ 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
}
Kể từ phiên bản 4.0, Gradle hiện sử dụng các thư mục lớp riêng biệt cho từng ngôn ngữ trong tập nguồn. Vì vậy, nếu tập lệnh xây dựng của bạn sử dụng sourceSets.integrationTest.output.classesDir
, bạn sẽ thấy cảnh báo không dùng nữa sau đây.
Gradle hiện sử dụng các thư mục đầu ra riêng biệt cho từng ngôn ngữ JVM, nhưng bản dựng này giả định một thư mục duy nhất cho tất cả các lớp từ một tập nguồn. Hành vi này không được dùng nữa và được lên lịch xóa trong Gradle 5.0
Để loại bỏ cảnh báo này, chỉ cần chuyển sang sourceSets.integrationTest.output.classesDirs
. Để biết thêm thông tin, hãy xem ghi chú phát hành Gradle 4.0 .
java/withIntegrationTests
mẫu trong bản phân phối Gradle đầy đủ.