import org.jackhuang.hmcl.gradle.ci.CheckUpdate import org.jackhuang.hmcl.gradle.docs.UpdateDocuments import org.jackhuang.hmcl.gradle.l10n.ParseLanguageSubtagRegistry 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")) } System.getenv("MAVEN_CENTRAL_REPO").let { repo -> if (repo.isNullOrBlank()) mavenCentral() else maven(url = repo) } maven(url = "https://jitpack.io") maven(url = "https://libraries.minecraft.net") } tasks.withType { options.encoding = "UTF-8" } @Suppress("UnstableApiUsage") tasks.withType { maxHeapSize.set("2g") } configure { sourceSets = setOf() } dependencies { "testImplementation"(rootProject.libs.junit.jupiter) "testRuntimeOnly"("org.junit.platform:junit-platform-launcher") } tasks.withType { useJUnitPlatform() testLogging.showStandardStreams = true } configure { publications { create("maven") { from(components["java"]) } } repositories { mavenLocal() } } tasks.register("checkstyle") { dependsOn(tasks["checkstyleMain"], tasks["checkstyleTest"]) } } org.jackhuang.hmcl.gradle.javafx.JavaFXUtils.register(rootProject) defaultTasks("clean", "build") tasks.register("parseLanguageSubtagRegistry") { languageSubtagRegistryFile.set(layout.projectDirectory.file("language-subtag-registry")) sublanguagesFile.set(layout.projectDirectory.file("HMCLCore/src/main/resources/assets/lang/sublanguages.csv")) defaultScriptFile.set(layout.projectDirectory.file("HMCLCore/src/main/resources/assets/lang/default_script.csv")) } tasks.register("updateDocuments") { documentsDir.set(layout.projectDirectory.dir("docs")) } tasks.register("checkUpdateDev") { uri.set("https://ci.huangyuhui.net/job/HMCL-nightly") } tasks.register("checkUpdateStable") { uri.set("https://ci.huangyuhui.net/job/HMCL-stable") }