kommons/build.gradle.kts
2024-02-03 16:20:10 +07:00

75 lines
1.4 KiB
Plaintext

plugins {
kotlin("jvm") version "1.8.0"
`maven-publish`
}
repositories {
mavenCentral()
}
tasks.compileKotlin {
kotlinOptions {
jvmTarget = "17"
freeCompilerArgs += "-opt-in=kotlin.RequiresOptIn"
freeCompilerArgs += "-Xjvm-default=all"
}
}
tasks.jar {
from(project(":core").sourceSets.main.get().output)
from(project(":io").sourceSets.main.get().output)
from(project(":io-math").sourceSets.main.get().output)
from(project(":math").sourceSets.main.get().output)
from(project(":collect").sourceSets.main.get().output)
from(project(":guava").sourceSets.main.get().output)
from(project(":networking").sourceSets.main.get().output)
}
val projectGroup: String by project
subprojects {
apply(plugin = "maven-publish")
apply(plugin = "kotlin")
group = projectGroup
tasks.compileKotlin {
kotlinOptions {
jvmTarget = "17"
freeCompilerArgs += "-opt-in=kotlin.RequiresOptIn"
freeCompilerArgs += "-Xjvm-default=all"
}
}
tasks {
create("sourceJar", org.gradle.jvm.tasks.Jar::class.java) {
archiveClassifier.set("sources")
from(sourceSets.main.get().allSource)
}
}
kotlin {
jvmToolchain(17)
}
tasks.test {
useJUnitPlatform()
}
publishing {
repositories {
maven {
url = uri("sftp://maven@dbotthepony.ru:22/maven")
credentials {
val mavenUser: String by project
val mavenPassword: String by project
username = mavenUser
password = mavenPassword
}
}
}
}
}