-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.gradle
82 lines (68 loc) · 2.08 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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
buildscript {
repositories {
mavenLocal()
mavenCentral()
}
dependencies {
classpath("foundation.icon:gradle-javaee-plugin:$javaeePluginVersion")
classpath 'com.squareup.wire:wire-gradle-plugin:4.5.0'
}
}
def scoreIntegrationTest = new HashMap<String, String>()
subprojects {
repositories {
mavenLocal()
mavenCentral()
}
apply plugin: 'java'
apply plugin: 'foundation.icon.javaee'
apply plugin: 'jacoco'
java {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
sourceSets {
intTest {
compileClasspath += sourceSets.main.output
runtimeClasspath += sourceSets.main.output
java {
}
}
}
configurations {
intTestImplementation.extendsFrom testImplementation
intTestAnnotationProcessor.extendsFrom testAnnotationProcessor
intTestRuntimeOnly.extendsFrom testRuntimeOnly
}
scoreIntegrationTest.put('env.props', new File(project(':test-lib').projectDir, 'conf/env.props'))
afterEvaluate { project ->
scoreIntegrationTest.put(project.name, project.getTasks().getByName("optimizedJar").outputJarName)
}
// need to add this option to retrieve formal parameter names
compileJava {
options.compilerArgs += ['-parameters']
}
}
gradle.taskGraph.whenReady { taskGraph ->
taskGraph.getAllTasks().eachWithIndex { task, n ->
if (task.name == 'integrationTest') {
scoreIntegrationTest.each { key, val -> task.systemProperty key, val }
}
}
}
task collectOptimizedJars(type: Copy) {
from subprojects.collect { subproject ->
subproject.fileTree('build/libs') {
include '**/*-optimized.jar'
}
}
into "$buildDir/output-jars"
}
task zipOutputOptimizedJars(type: Zip) {
dependsOn collectOptimizedJars
from("$buildDir/output-jars") {
include '**/*-optimized.jar'
}
archiveFileName = "javascore-contracts.zip"
destinationDirectory = file("$buildDir")
}