Clean build
This commit is contained in:
parent
f037c6a724
commit
907fdb4f10
@ -1,8 +1,12 @@
|
|||||||
plugins {
|
plugins {
|
||||||
id("kotlin-application")
|
id("kotlin-application")
|
||||||
id("com.github.johnrengelman.shadow") version "6.1.0"
|
id("shadow")
|
||||||
|
id("native-image")
|
||||||
|
id("release")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
version = "0.0.1-SNAPSHOT"
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation("org.slf4j:slf4j-api:2.0.0-alpha1")
|
implementation("org.slf4j:slf4j-api:2.0.0-alpha1")
|
||||||
runtimeOnly("org.slf4j:slf4j-simple:2.0.0-alpha1")
|
runtimeOnly("org.slf4j:slf4j-simple:2.0.0-alpha1")
|
||||||
@ -16,27 +20,3 @@ application {
|
|||||||
mainClass.set("scaffold.ScaffoldKt")
|
mainClass.set("scaffold.ScaffoldKt")
|
||||||
applicationName = "scaffold"
|
applicationName = "scaffold"
|
||||||
}
|
}
|
||||||
|
|
||||||
tasks.withType<com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar> {
|
|
||||||
archiveBaseName.set("scaffold")
|
|
||||||
archiveClassifier.set("")
|
|
||||||
archiveVersion.set("")
|
|
||||||
}
|
|
||||||
|
|
||||||
task("buildNative") {
|
|
||||||
dependsOn("installShadowDist")
|
|
||||||
|
|
||||||
doLast {
|
|
||||||
exec {
|
|
||||||
commandLine(
|
|
||||||
"native-image",
|
|
||||||
"--no-fallback",
|
|
||||||
"-R:MaxNewSize=32",
|
|
||||||
"--language:js",
|
|
||||||
"-jar",
|
|
||||||
"${project.buildDir}/install/app-shadow/lib/scaffold.jar",
|
|
||||||
"${project.buildDir}/native/scaffold"
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -13,4 +13,5 @@ repositories {
|
|||||||
dependencies {
|
dependencies {
|
||||||
implementation(platform("org.jetbrains.kotlin:kotlin-bom:1.4.31"))
|
implementation(platform("org.jetbrains.kotlin:kotlin-bom:1.4.31"))
|
||||||
implementation("org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.31")
|
implementation("org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.31")
|
||||||
|
implementation("com.github.jengelman.gradle.plugins:shadow:6.1.0")
|
||||||
}
|
}
|
||||||
|
|||||||
21
buildSrc/src/main/kotlin/native-image.gradle.kts
Normal file
21
buildSrc/src/main/kotlin/native-image.gradle.kts
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
task("buildNative") {
|
||||||
|
dependsOn("installShadowDist")
|
||||||
|
|
||||||
|
outputs.file("${buildDir}/native/scaffold")
|
||||||
|
|
||||||
|
doLast {
|
||||||
|
val graalvmHome = System.getenv("GRAALVM_HOME") ?: error("GRAALVM_HOME is not set")
|
||||||
|
|
||||||
|
exec {
|
||||||
|
commandLine(
|
||||||
|
"${graalvmHome}/bin/native-image",
|
||||||
|
"--no-fallback",
|
||||||
|
"-R:MaxNewSize=32",
|
||||||
|
"--language:js",
|
||||||
|
"-jar",
|
||||||
|
"${buildDir}/install/app-shadow/lib/scaffold.jar",
|
||||||
|
"${buildDir}/native/scaffold"
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
7
buildSrc/src/main/kotlin/release.gradle.kts
Normal file
7
buildSrc/src/main/kotlin/release.gradle.kts
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
tasks.register<Zip>("release") {
|
||||||
|
dependsOn("buildNative")
|
||||||
|
|
||||||
|
archiveFileName.set("scaffold-${archiveVersion.get()}-linux.zip")
|
||||||
|
destinationDirectory.set(file("$buildDir/release"))
|
||||||
|
from("$buildDir/native/scaffold")
|
||||||
|
}
|
||||||
11
buildSrc/src/main/kotlin/shadow.gradle.kts
Normal file
11
buildSrc/src/main/kotlin/shadow.gradle.kts
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
|
||||||
|
|
||||||
|
plugins {
|
||||||
|
id("com.github.johnrengelman.shadow")
|
||||||
|
}
|
||||||
|
|
||||||
|
tasks.withType<ShadowJar> {
|
||||||
|
archiveBaseName.set("scaffold")
|
||||||
|
archiveClassifier.set("")
|
||||||
|
archiveVersion.set("")
|
||||||
|
}
|
||||||
3
gradle.properties
Normal file
3
gradle.properties
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
org.gradle.jvmargs=-Xmx2048M -XX:MaxPermSize=512m -Dfile.encoding=UTF-8
|
||||||
|
org.gradle.caching=true
|
||||||
|
org.gradle.parallel=true
|
||||||
Loading…
x
Reference in New Issue
Block a user