-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.gradle.kts
45 lines (33 loc) · 1.09 KB
/
build.gradle.kts
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
@file:Suppress("HasPlatformType")
plugins {
java
}
java.toolchain.languageVersion.set(JavaLanguageVersion.of(11))
val shim by sourceSets.creating
val packaged by configurations.creating
repositories {
mavenCentral()
}
dependencies {
implementation("org.ow2.asm:asm:9.4")
add(shim.implementationConfigurationName, "com.sun.xml.bind:jaxb-core:4.0.0")
packaged("javax.xml.bind:jaxb-api:2.4.0-b180830.0359") { isTransitive = false }
packaged("com.sun.xml.bind:jaxb-core:4.0.0") { isTransitive = false }
}
val shimJar by tasks.creating(Jar::class) {
archiveBaseName.set("jaxb-core-shim")
from(shim.output)
}
tasks.named<Jar>(JavaPlugin.JAR_TASK_NAME) {
manifest {
attributes(mapOf("Premain-Class" to "dev.necauqua.scm.Agent"))
}
// add the packaged jars and our shim
from(listOf(packaged, shimJar)) {
into("extraLibs")
}
// embed actual agent dependencies (well, only asm) as a fat jar
from(configurations.runtimeClasspath.get().map { if (it.isDirectory) it else zipTree(it) })
// licensing
from("LICENSE", "LICENSE-asm")
}