ScalaBot/scalabot-extension/build.gradle.kts
LamGC 6e5cd07c51
build(dependencies): 更新依赖项版本.
更新与日志和测试有关的依赖项版本.
2022-10-25 17:18:24 +08:00

114 lines
3.5 KiB
Plaintext

plugins {
kotlin("jvm")
java
jacoco
`maven-publish`
signing
id("org.jetbrains.kotlinx.binary-compatibility-validator") version "0.11.1"
}
dependencies {
implementation("commons-codec:commons-codec:1.15")
api("org.telegram:telegrambots-abilities:6.1.0")
api("org.slf4j:slf4j-api:2.0.3")
// Added as a mitigation measure for vulnerabilities.
// When the relevant reference dependency updates it, it will be removed.
implementation("com.fasterxml.jackson.core:jackson-databind:2.13.4.2")
testImplementation("org.junit.jupiter:junit-jupiter-api:5.9.0")
testImplementation("org.mockito:mockito-core:4.8.0")
testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine")
}
tasks.withType<Javadoc> {
options {
encoding = "UTF-8"
}
}
java {
withJavadocJar()
withSourcesJar()
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
tasks.test {
useJUnitPlatform()
finalizedBy(tasks.jacocoTestReport)
}
tasks.jacocoTestReport {
dependsOn(tasks.test)
}
tasks.withType<AbstractArchiveTask>().configureEach {
isPreserveFileTimestamps = false
isReproducibleFileOrder = true
}
publishing {
repositories {
if (project.version.toString().endsWith("-SNAPSHOT")) {
maven("https://nexus.kuku.me/repository/maven-snapshots/") {
credentials {
username = project.properties["repo.credentials.private.username"].toString()
password = project.properties["repo.credentials.private.password"].toString()
}
}
} else {
maven("https://nexus.kuku.me/repository/maven-releases/") {
credentials {
username = project.properties["repo.credentials.private.username"].toString()
password = project.properties["repo.credentials.private.password"].toString()
}
}
}
}
publications {
create<MavenPublication>("maven") {
from(components["java"])
pom {
name.set("ScalaBot-Extension-api")
description.set(
"Dependencies for developing scalabot " +
"(a robotic application based on the TelegramBots[Github@rubenlagus/TelegramBots] project)"
)
url.set("https://github.com/LamGC/ScalaBot")
licenses {
license {
name.set("The MIT License")
url.set("https://www.opensource.org/licenses/mit-license.php")
}
}
developers {
developer {
id.set("LamGC")
name.set("LamGC")
email.set("lam827@lamgc.net")
url.set("https://github.com/LamGC")
}
}
scm {
connection.set("scm:git:https://github.com/LamGC/ScalaBot.git")
developerConnection.set("scm:git:https://github.com/LamGC/ScalaBot.git")
url.set("https://github.com/LamGC/ScalaBot")
}
issueManagement {
url.set("https://github.com/LamGC/ScalaBot/issues")
system.set("Github Issues")
}
}
}
}
}
signing {
useGpgCmd()
sign(publishing.publications["maven"])
}