HMCL/build.gradle.kts

100 lines
2.2 KiB
Plaintext
Raw Normal View History

2022-01-01 13:43:54 +08:00
plugins {
id("checkstyle")
}
group = "org.jackhuang"
version = "3.0"
subprojects {
apply {
plugin("java")
plugin("idea")
plugin("maven-publish")
plugin("checkstyle")
}
repositories {
flatDir {
name = "libs"
dirs = setOf(rootProject.file("lib"))
}
mavenCentral()
maven(url = "https://jitpack.io")
}
tasks.withType<JavaCompile> {
sourceCompatibility = "1.8"
targetCompatibility = "1.8"
options.encoding = "UTF-8"
}
configure<CheckstyleExtension> {
sourceSets = setOf()
}
dependencies {
2023-01-14 01:48:38 +08:00
"testImplementation"("org.junit.jupiter:junit-jupiter:5.9.1")
}
tasks.withType<Test> {
useJUnitPlatform()
testLogging.showStandardStreams = true
2022-01-01 13:43:54 +08:00
}
configure<PublishingExtension> {
publications {
create<MavenPublication>("maven") {
from(components["java"])
}
}
repositories {
mavenLocal()
}
}
}
tasks.create("checkTranslations") {
doLast {
val hmclLangDir = file("HMCL/src/main/resources/assets/lang")
val en = java.util.Properties().apply {
hmclLangDir.resolve("I18N.properties").bufferedReader().use { load(it) }
}
val zh = java.util.Properties().apply {
hmclLangDir.resolve("I18N_zh.properties").bufferedReader().use { load(it) }
}
val zh_CN = java.util.Properties().apply {
hmclLangDir.resolve("I18N_zh_CN.properties").bufferedReader().use { load(it) }
}
var success = true
zh_CN.forEach {
if (!en.containsKey(it.key)) {
project.logger.warn("I18N.properties missing key '${it.key}'")
success = false
}
}
zh_CN.forEach {
if (!zh.containsKey(it.key)) {
project.logger.warn("I18N_zh.properties missing key '${it.key}'")
success = false
}
}
if (!success) {
throw GradleException("Part of the translation is missing")
}
}
}
2022-01-23 19:30:21 +08:00
apply {
from("javafx.gradle.kts")
}
2022-01-01 13:43:54 +08:00
defaultTasks("clean", "build")