Files
wson/build.gradle
Walter Oggioni 069e55aeb0
All checks were successful
CI / build (push) Successful in 42s
added publications
2024-04-04 09:28:42 +08:00

124 lines
2.6 KiB
Groovy

plugins {
id 'jacoco'
id 'maven-publish'
alias catalog.plugins.multi.release.jar
alias catalog.plugins.envelope apply false
alias catalog.plugins.lombok apply false
}
allprojects {
apply plugin: 'java-library'
apply plugin: catalog.plugins.lombok.get().pluginId
group = "net.woggioni"
version = getProperty('wson.version')
java {
modularity.inferModulePath = true
toolchain {
languageVersion = JavaLanguageVersion.of(21)
vendor = JvmVendorSpec.GRAAL_VM
}
}
lombok {
version = catalog.versions.lombok.get()
}
repositories {
maven {
url = getProperty('gitea.maven.url')
content {
includeGroup 'com.lys'
includeGroup 'net.woggioni'
}
}
mavenCentral()
}
pluginManager.withPlugin('jacoco') {
test {
finalizedBy jacocoTestReport
}
jacocoTestReport {
dependsOn test
}
}
dependencies {
implementation catalog.xz
testImplementation catalog.junit.jupiter.api
testImplementation catalog.junit.jupiter.params
testRuntimeOnly catalog.junit.jupiter.engine
}
test {
useJUnitPlatform()
}
tasks.named(JavaPlugin.COMPILE_JAVA_TASK_NAME, JavaCompile) {
options.release = 17
}
pluginManager.withPlugin(catalog.plugins.kotlin.jvm.get().pluginId) {
compileKotlin {
kotlinOptions.with {
jvmTarget = '17'
}
}
}
pluginManager.withPlugin('maven-publish') {
publishing {
repositories {
maven {
name = "Gitea"
url = uri(getProperty('gitea.maven.url'))
credentials(HttpHeaderCredentials) {
name = "Authorization"
value = "token ${System.getenv()["PUBLISHER_TOKEN"]}"
}
authentication {
header(HttpHeaderAuthentication)
}
}
}
}
}
}
dependencies {
implementation catalog.jwo
implementation catalog.slf4j.api
testImplementation project('test-utils')
testImplementation catalog.jackson.databind
}
java {
withJavadocJar()
withSourcesJar()
}
compileJava {
options.compilerArgs << '-parameters'
}
ext {
setProperty('jpms.module.name', 'net.woggioni.wson')
}
publishing {
publications {
maven(MavenPublication) {
from(components["java"])
}
}
}