1
- import org.jetbrains.kotlin.gradle.tasks.KotlinJvmCompile
2
1
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
2
+ import org.jetbrains.kotlin.gradle.tasks.KotlinJvmCompile
3
3
4
4
buildscript {
5
+ repositories {
6
+ mavenCentral()
7
+ }
5
8
dependencies {
6
9
classpath libs. kotlin. gradle. plugin
7
10
}
@@ -20,35 +23,37 @@ dependencies {
20
23
r8 libs. r8
21
24
}
22
25
26
+ def targetJavaVersion = 11
27
+
23
28
tasks. withType(JavaCompile ). configureEach {
24
- sourceCompatibility = JavaVersion . VERSION_11
25
- targetCompatibility = JavaVersion . VERSION_11
29
+ options. release = targetJavaVersion
26
30
}
27
31
28
32
tasks. withType(KotlinJvmCompile ). configureEach {
29
33
compilerOptions {
30
- jvmTarget = JvmTarget . JVM_11
34
+ jvmTarget = JvmTarget . fromTarget(targetJavaVersion . toString())
31
35
freeCompilerArgs. addAll(
32
36
' -Xno-call-assertions' ,
33
37
' -Xno-param-assertions' ,
34
38
' -Xno-receiver-assertions' ,
39
+ " -Xjdk-release=$targetJavaVersion " ,
35
40
)
36
41
}
37
42
}
38
43
39
- def fatJarProvider = tasks. register(' fatJar' , Jar ) { task ->
40
- task. dependsOn(configurations. named(' runtimeClasspath' ))
41
- task. dependsOn(tasks. named(' jar' ))
44
+ tasks. named(' jar' , Jar ) {
45
+ // We don't need the thin jar, use the fatJar instead.
46
+ enabled = false
47
+ }
42
48
49
+ def fatJarProvider = tasks. register(' fatJar' , Jar ) { task ->
43
50
task. archiveClassifier = ' fat'
44
51
45
52
task. manifest {
46
53
attributes ' Main-Class' : ' com.jakewharton.gradle.dependencies.DependencyTreeDiff'
47
54
}
48
55
49
- def sourceClasses = sourceSets. main. output. classesDirs
50
- task. inputs. files(sourceClasses)
51
- task. from files(sourceClasses)
56
+ task. from sourceSets. named(' main' ). map { it. output }
52
57
task. from configurations. named(' runtimeClasspath' ). map {
53
58
it. asFileTree. files. collect { it. isDirectory() ? it : zipTree(it) }
54
59
}
@@ -111,13 +116,3 @@ tasks.named('assemble').configure { task ->
111
116
artifacts {
112
117
archives file : binaryFile, name : ' binary' , type : ' jar' , builtBy : binaryJar, classifier : ' binary'
113
118
}
114
-
115
- buildscript {
116
- repositories {
117
- mavenCentral()
118
- }
119
- }
120
- repositories {
121
- mavenCentral()
122
- google()
123
- }
0 commit comments