From e59891c7df6dbecf02aeac43c88c120b3651fb01 Mon Sep 17 00:00:00 2001 From: TheWhiteDog9487 Date: Wed, 30 Oct 2024 17:24:11 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=8D=A2Gradle=E8=AF=AD=E6=B3=95?= =?UTF-8?q?=EF=BC=8CGroovy=20->=20Kotlin?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle | 100 ----------------------- build.gradle.kts | 85 +++++++++++++++++++ gradle/wrapper/gradle-wrapper.properties | 2 +- settings.gradle | 11 --- settings.gradle.kts | 9 ++ 5 files changed, 95 insertions(+), 112 deletions(-) delete mode 100644 build.gradle create mode 100644 build.gradle.kts delete mode 100644 settings.gradle create mode 100644 settings.gradle.kts diff --git a/build.gradle b/build.gradle deleted file mode 100644 index 8a6d853..0000000 --- a/build.gradle +++ /dev/null @@ -1,100 +0,0 @@ -plugins { - id 'fabric-loom' version '1.6-SNAPSHOT' - id 'maven-publish' -} - -version = project.mod_version -group = project.maven_group - -base { - archivesName = project.archives_base_name -} - -repositories { - // Add repositories to retrieve artifacts from in here. - // You should only use this when depending on other mods because - // Loom adds the essential maven repositories to download Minecraft and libraries from automatically. - // See https://docs.gradle.org/current/userguide/declaring_repositories.html - // for more information about repositories. - maven { - name 'Xander Maven' - url 'https://maven.isxander.dev/releases'} - maven { - name = "Terraformers" - url = "https://maven.terraformersmc.com/releases"} - } - -loom { - splitEnvironmentSourceSets() - - mods { - "twd-sasf" { - sourceSet sourceSets.main - sourceSet sourceSets.client - } - } - -} - -dependencies { - // To change the versions see the gradle.properties file - minecraft "com.mojang:minecraft:${project.minecraft_version}" - mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2" - modImplementation "net.fabricmc:fabric-loader:${project.loader_version}" - - // Fabric API. This is technically optional, but you probably want it anyway. - // modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}" - - // Uncomment the following line to enable the deprecated Fabric API modules. - // These are included in the Fabric API production distribution and allow you to update your mod to the latest modules at a later more convenient time. - - // modImplementation "net.fabricmc.fabric-api:fabric-api-deprecated:${project.fabric_version}" - modImplementation 'dev.isxander:yet-another-config-lib:3.5.0+1.21-fabric' - // https://maven.isxander.dev/#/releases/dev/isxander/yacl/yet-another-config-lib-fabric - modImplementation "com.terraformersmc:modmenu:11.0.0-beta.1" -} - -processResources { - inputs.property "version", project.version - - filesMatching("fabric.mod.json") { - expand "version": project.version - } -} - -tasks.withType(JavaCompile).configureEach { - it.options.release = 17 -} - -java { - // Loom will automatically attach sourcesJar to a RemapSourcesJar task and to the "build" task - // if it is present. - // If you remove this line, sources will not be generated. - withSourcesJar() - - sourceCompatibility = JavaVersion.VERSION_17 - targetCompatibility = JavaVersion.VERSION_17 -} - -jar { - from("LICENSE") { - rename { "${it}_${project.base.archivesName.get()}"} - } -} - -// configure the maven publication -publishing { - publications { - mavenJava(MavenPublication) { - from components.java - } - } - - // See https://docs.gradle.org/current/userguide/publishing_maven.html for information on how to set up publishing. - repositories { - // Add repositories to publish to here. - // Notice: This block does NOT have the same function as the block in the top level. - // The repositories here will be used for publishing your artifact, not for - // retrieving dependencies. - } -} \ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 index 0000000..9bfa9c3 --- /dev/null +++ b/build.gradle.kts @@ -0,0 +1,85 @@ +plugins { + id("fabric-loom") version "1.8-SNAPSHOT" + id("maven-publish") +} + +version = project.extra["mod_version"] as String +group = project.extra["maven_group"] as String + +base { + archivesName.set(project.extra["archives_base_name"] as String) +} + +repositories { + maven { + name = "Xander Maven" + url = uri("https://maven.isxander.dev/releases")} + maven { + name = "Terraformers" + url = uri("https://maven.terraformersmc.com/releases")} +} + +loom { + splitEnvironmentSourceSets() + + mods { + create("twd-sasf") { + sourceSet(sourceSets["main"]) + sourceSet(sourceSets["client"]) + } + } +} + +dependencies { + // To change the versions see the gradle.properties file + minecraft("com.mojang:minecraft:${project.extra["minecraft_version"]}") + mappings("net.fabricmc:yarn:${project.extra["yarn_mappings"]}:v2") + modImplementation("net.fabricmc:fabric-loader:${project.extra["loader_version"]}") + + // Fabric API. This is technically optional, but you probably want it anyway. + modImplementation("net.fabricmc.fabric-api:fabric-api:${project.extra["fabric_version"]}") + + // Uncomment the following line to enable the deprecated Fabric API modules. + // These are included in the Fabric API production distribution and allow you to update your mod to the latest modules at a later more convenient time. + // "modImplementation"("net.fabricmc.fabric-api:fabric-api-deprecated:${project.extra["fabric_version"]}") + + modImplementation("com.terraformersmc:modmenu:${project.extra["modmenu_version"]}") + modImplementation("dev.isxander:yet-another-config-lib:${project.extra["yacl_version"]}") +} + +tasks.processResources { + inputs.property("version", project.version) + filesMatching("fabric.mod.json") { + expand("version" to project.version) + } +} + +tasks.withType { + options.release.set(21) +} + +java { + withSourcesJar() + sourceCompatibility = JavaVersion.VERSION_21 + targetCompatibility = JavaVersion.VERSION_21 +} + +tasks.jar { + from("LICENSE") { + rename { "${it}_${project.base.archivesName.get()}" } + } +} + +publishing { + publications { + create("mavenJava") { + from(components["java"]) + } + } + + repositories { + // Add repositories to publish to here. + // Notice: This block does NOT have the same function as the block in the top level. + // The repositories here will be used for publishing your artifact, not for retrieving dependencies. + } +} \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index a441313..df97d72 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.8-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/settings.gradle b/settings.gradle deleted file mode 100644 index 98415ec..0000000 --- a/settings.gradle +++ /dev/null @@ -1,11 +0,0 @@ -pluginManagement { - repositories { - maven { - name = 'Fabric' - url = 'https://maven.aliyun.com/repository/gradle-plugin' - url = 'https://maven.fabricmc.net/' - } - mavenCentral() - gradlePluginPortal() - } -} \ No newline at end of file diff --git a/settings.gradle.kts b/settings.gradle.kts new file mode 100644 index 0000000..d3feea6 --- /dev/null +++ b/settings.gradle.kts @@ -0,0 +1,9 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = uri("https://maven.fabricmc.net/")} + mavenCentral() + gradlePluginPortal() + } +} \ No newline at end of file