Nếu bạn muốn sử dụng các phụ thuộc giả để có:
- Các lớp nguồn của ProjectB phụ thuộc vào các lớp nguồn của Project A
- Các lớp kiểm tra của ProjectB phụ thuộc vào các lớp kiểm tra của Project A
sau đó phần phụ thuộc của ProjectB trong build.gradle sẽ trông giống như thế này:
dependencies {
compile("com.example:projecta:1.0.0")
testCompile("com.example:projecta:1.0.0:tests")
}
Để làm việc này, ProjectA cần xây dựng một -tests jar và bao gồm nó trong hiện vật nó tạo ra.
Build.gradle của ProjectA nên chứa cấu hình như thế này:
task testsJar(type: Jar, dependsOn: testClasses) {
classifier = 'tests'
from sourceSets.test.output
}
configurations {
tests
}
artifacts {
tests testsJar
archives testsJar
}
jar.finalizedBy(testsJar)
Khi các tạo phẩm của ProjectA được xuất bản tới vật phẩm của bạn, chúng sẽ bao gồm một -tests lọ .
Các testCompile trong phần phụ thuộc ProjectB sẽ mang lại các lớp trong -tests jar.
Nếu bạn muốn bao gồm các lớp nguồn và kiểm tra của ProjectA trong ProjectB cho mục đích phát triển thì phần phụ thuộc trong build.gradle của ProjectB sẽ giống như sau:
dependencies {
compile project(':projecta')
testCompile project(path: ':projecta', configuration: 'tests')
}