SmushyTaco

Untitled

Nov 11th, 2024
276
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Kotlin 2.93 KB | None | 0 0
  1. import org.jetbrains.kotlin.gradle.dsl.JvmTarget
  2. import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
  3. plugins {
  4.     id("fabric-loom")
  5.     kotlin("jvm")
  6. }
  7. base.archivesName = project.extra["archives_base_name"] as String
  8. version = project.extra["mod_version"] as String
  9. group = project.extra["maven_group"] as String
  10. sourceSets.main { java.srcDirs("src/main/generatedJava") }
  11. repositories {
  12.     maven("https://maven.wispforest.io/releases/")
  13. }
  14. dependencies {
  15.     minecraft("com.mojang", "minecraft", project.extra["minecraft_version"] as String)
  16.     mappings("net.fabricmc", "yarn", project.extra["yarn_mappings"] as String, null, "v2")
  17.     modImplementation("net.fabricmc", "fabric-loader", project.extra["loader_version"] as String)
  18.     modImplementation("net.fabricmc.fabric-api", "fabric-api", project.extra["fabric_version"] as String)
  19.     modImplementation("net.fabricmc", "fabric-language-kotlin", project.extra["fabric_language_kotlin_version"] as String)
  20.     annotationProcessor(modImplementation("io.wispforest", "owo-lib", project.extra["owo_version"] as String))
  21.     include("io.wispforest", "owo-sentinel", project.extra["owo_version"] as String)
  22. }
  23. tasks {
  24.     val javaVersion = JavaVersion.toVersion((project.extra["java_version"] as String).toInt())
  25.     withType<JavaCompile>().configureEach {
  26.         options.encoding = "UTF-8"
  27.         sourceCompatibility = javaVersion.toString()
  28.         targetCompatibility = javaVersion.toString()
  29.         options.release = javaVersion.toString().toInt()
  30.     }
  31.     withType<JavaExec>().configureEach { defaultCharacterEncoding = "UTF-8" }
  32.     withType<Javadoc>().configureEach { options.encoding = "UTF-8" }
  33.     withType<Test>().configureEach { defaultCharacterEncoding = "UTF-8" }
  34.     withType<KotlinCompile>().configureEach { compilerOptions.jvmTarget = JvmTarget.valueOf("JVM_$javaVersion") }
  35.     compileJava { options.generatedSourceOutputDirectory.set(file("$projectDir/src/main/generatedJava/com/smushytaco/solar_apocalypse/configuration_support")) }
  36.     jar { from("LICENSE") { rename { "${it}_${base.archivesName.get()}" } } }
  37.     processResources {
  38.         filesMatching("fabric.mod.json") { expand(mutableMapOf("version" to project.extra["mod_version"] as String, "fabricloader" to project.extra["loader_version"] as String, "fabric_api" to project.extra["fabric_version"] as String, "fabric_language_kotlin" to project.extra["fabric_language_kotlin_version"] as String, "minecraft" to project.extra["minecraft_version"] as String, "java" to project.extra["java_version"] as String)) }
  39.         filesMatching("*.mixins.json") { expand(mutableMapOf("java" to project.extra["java_version"] as String)) }
  40.     }
  41.     java {
  42.         toolchain.languageVersion = JavaLanguageVersion.of(javaVersion.toString())
  43.         sourceCompatibility = javaVersion
  44.         targetCompatibility = javaVersion
  45.         withSourcesJar()
  46.     }
  47.     val sourcesJar by getting(Jar::class) { dependsOn(compileJava) }
  48. }
Add Comment
Please, Sign In to add comment