Files
com_r35157_nenjim-hubd-impl…/build.gradle.kts

87 lines
2.0 KiB
Kotlin

plugins {
id("java")
id("application")
id("maven-publish")
}
group = "com.r35157.nenjim"
version = project.findProperty("version") ?: "UNSET"
if (version == "UNSET" && gradle.startParameter.taskNames.any { it.startsWith("publish") }) {
throw GradleException("You must set -Pversion=... (use publish.sh / publishCICD.sh)")
}
application {
mainClass.set("com.r35157.nenjim.hubd.impl.ref.Main")
}
repositories {
mavenLocal()
maven {
name = "Artifacts"
url = uri("/mnt/artifacts/java")
// Failsafe for Android variant-aware deps + klassiske Maven-artefakter:
metadataSources {
gradleMetadata() // bevar .module for Android/AAR varianter
mavenPom()
artifact()
}
}
mavenCentral()
}
dependencies {
implementation(platform("org.apache.logging.log4j:log4j-bom:2.25.2"))
implementation("org.apache.logging.log4j:log4j-api")
runtimeOnly("org.apache.logging.log4j:log4j-core")
compileOnly("org.jetbrains:annotations:26.0.2-1")
implementation("com.r35157.nenjim:hubd-api:0.1-dev")
}
java {
toolchain { languageVersion.set(JavaLanguageVersion.of(25)) }
}
tasks.withType<JavaCompile>().configureEach {
options.release.set(25)
}
val libsDir = layout.buildDirectory.dir("libs")
tasks.register<Sync>("prepareLibs") {
group = "distribution"
description = "Copies runtime deps to build/libs without deleting the app jar"
val jarTask = tasks.named<Jar>("jar")
dependsOn(jarTask)
into(libsDir)
// Kun deps (transitivt)
from(configurations.runtimeClasspath)
// Bevar jar-filen som jar-tasken allerede har lagt i build/libs
preserve {
include(jarTask.get().archiveFileName.get())
}
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
}
publishing {
publications {
create<MavenPublication>("mavenJava") {
from(components["java"])
}
}
repositories {
maven {
name = "Artifacts"
url = uri("/mnt/artifacts/java")
}
}
}