SR-Core/build.gradle.kts
unurled f6763449f1
All checks were successful
publish / build (push) Successful in 3m17s
Add Lamp command framework
2024-10-18 17:43:00 +02:00

90 lines
2.3 KiB
Kotlin

import groovy.json.JsonGenerator.Options
plugins {
`java-library`
`maven-publish`
id("com.gradleup.shadow") version "8.3.3"
id("io.papermc.paperweight.userdev") version "1.7.3"
id("org.sonarqube") version "5.1.0.4882"
}
group = "me.unurled"
version = "0.1.2"
val mcVersion = "1.21.1-R0.1-SNAPSHOT"
val lampVersion = "4.0.0-beta.17"
val javaVersion = 21
repositories {
mavenCentral()
}
dependencies {
paperweight.paperDevBundle(mcVersion)
implementation("io.github.revxrsal:lamp.common:${lampVersion}")
implementation("io.github.revxrsal:lamp.bukkit:${lampVersion}")
implementation("io.github.revxrsal:lamp.brigadier:${lampVersion}")
implementation("io.github.revxrsal:lamp.paper:${lampVersion}")
}
java {
val targetVersion = JavaVersion.toVersion(javaVersion)
sourceCompatibility = targetVersion
targetCompatibility = targetVersion
if (JavaVersion.current() < targetVersion) {
toolchain.languageVersion = JavaLanguageVersion.of(javaVersion)
}
withJavadocJar()
withSourcesJar()
}
tasks {
assemble {
dependsOn("reobfJar")
}
compileJava {
options.encoding = Charsets.UTF_8.name()
options.compilerArgs.add("-parameters")
if (javaVersion >= 10 || JavaVersion.current().isJava10Compatible()) {
options.release.set(javaVersion)
}
}
sonar {
properties {
property("sonar.projectKey", "SR-Core")
property("sonar.host.url", "https://qube.unurled.me")
}
}
javadoc {
if (JavaVersion.current().isJava9Compatible) {
(options as StandardJavadocDocletOptions).addBooleanOption("html5", true)
}
}
}
publishing {
repositories {
maven {
name = "repounurledme"
url = uri("https://repo.unurled.me/releases")
credentials(PasswordCredentials::class)
authentication {
create<BasicAuthentication>("basic")
}
}
}
publications {
create<MavenPublication>("maven") {
groupId = project.group.toString()
artifactId = project.name
version = project.version.toString()
from(components["java"])
artifact(tasks.reobfJar) {
classifier = ""
}
}
}
}