-
-
Notifications
You must be signed in to change notification settings - Fork 3
/
build.gradle
49 lines (42 loc) · 1.15 KB
/
build.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
// All these are created as subprojects but in real life these are totally separate projects run by different companies.
// It's just easier to demonstrate if we have one "super-project".
subprojects {
apply plugin: 'java'
repositories {
flatDir {
name "flatRepo"
dirs "${rootProject.projectDir}/repo"
}
}
uploadArchives {
repositories {
add project.repositories.flatRepo
}
}
}
project(':library') {
dependencies {
compile 'JavaOverload:lib1:unspecified'
compile 'JavaOverload:lib2:unspecified'
}
}
project(':app') {
dependencies {
compile 'JavaOverload:lib1:unspecified'
compile 'JavaOverload:library:unspecified'
}
jar {
manifest {
attributes 'Main-Class': 'my.app.Main'
}
}
}
project(':') {
task clean(type: Delete) {
delete 'repo'
}
}
// Simulate existence of all dependency libraries in the "central repo" before building the next one
project(':library').tasks.compileJava.dependsOn << project(':lib1' ).tasks['uploadArchives']
project(':library').tasks.compileJava.dependsOn << project(':lib2' ).tasks['uploadArchives']
project(':app' ).tasks.compileJava.dependsOn << project(':library').tasks['uploadArchives']