feat(release): first release

This commit is contained in:
darwincereska
2025-11-10 11:36:50 -05:00
parent d87ba15ed1
commit cfa80de654
9 changed files with 676 additions and 22 deletions

View File

@@ -6,6 +6,7 @@ plugins {
application
id("com.github.gmazzo.buildconfig") version "4.1.2"
id("com.gradleup.shadow") version "9.2.2"
id("org.graalvm.buildtools.native") version "0.9.28"
}
group = "io.notevc"
@@ -34,10 +35,49 @@ application {
mainClass.set("io.notevc.NoteVCKt")
}
tasks.shadowJar {
archiveClassifier.set("") // This should remove the -all suffix
manifest {
attributes(mapOf("Main-Class" to "io.notevc.NoteVCKt"))
}
}
graalvmNative {
binaries {
named("main") {
imageName.set("notevc")
mainClass.set("io.notevc.NoteVCKt")
// Force it to use the shadowJar
classpath.from(tasks.shadowJar.get().outputs.files)
buildArgs.addAll(listOf(
"--no-fallback",
"-H:+ReportExceptionStackTraces",
"-H:+UnlockExperimentalVMOptions",
"--initialize-at-build-time=kotlin",
"--initialize-at-build-time=kotlinx",
"--initialize-at-build-time=io.notevc",
"--enable-monitoring=heapdump,jfr",
"-H:IncludeResources=.*\\.json",
"-H:IncludeResources=.*\\.properties"
))
}
}
}
tasks.withType<Test> {
useJUnitPlatform()
}
tasks.nativeCompile {
dependsOn(tasks.shadowJar)
}
tasks.build {
dependsOn(tasks.shadowJar)
}
@@ -46,3 +86,6 @@ tasks.jar {
enabled = false
}
tasks.startScripts {
dependsOn(tasks.shadowJar)
}