Guest User

Untitled

a guest
Jan 26th, 2025
11
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.80 KB | None | 0 0
  1.  
  2.  
  3. plugins {
  4. java
  5. id("maven-publish")
  6. id("gg.essential.defaults")
  7. id("gg.essential.defaults.loom")
  8. }
  9.  
  10. version = project.property("mod_version") as String
  11. group = project.property("maven_group") as String
  12.  
  13. base {
  14. archivesName.set(project.property("archives_base_name") as String)
  15. }
  16.  
  17. val targetJavaVersion = 21
  18. java {
  19. toolchain.languageVersion = JavaLanguageVersion.of(targetJavaVersion)
  20. withSourcesJar()
  21. sourceCompatibility = JavaVersion.VERSION_21
  22. targetCompatibility = JavaVersion.VERSION_21
  23. }
  24.  
  25.  
  26. repositories {
  27. maven { url = uri("https://maven.terraformersmc.com/releases/") }
  28. maven { url = uri("https://maven.shedaniel.me/") }
  29. maven { url = uri("https://maven.wispforest.io") }
  30. maven {
  31. name = "CottonMC"
  32. url = uri("https://server.bbkr.space/artifactory/libs-release")
  33. }
  34. maven(url = "https://s01.oss.sonatype.org/content/repositories/snapshots/") {
  35. name = "sonatype-oss-snapshots1"
  36. mavenContent { snapshotsOnly() }
  37. }
  38. mavenCentral()
  39.  
  40. // Dev only
  41. maven { url = uri("https://pkgs.dev.azure.com/djtheredstoner/DevAuth/_packaging/public/maven/v1") }
  42. }
  43.  
  44. dependencies {
  45. implementation("org.projectlombok:lombok:1.18.32")
  46. annotationProcessor("org.projectlombok:lombok:1.18.32")
  47. // Fabric API
  48. modImplementation("net.fabricmc.fabric-api:fabric-api:${project.findProperty("fabric_version")}")
  49.  
  50. // Mod dependencies
  51. modApi("com.terraformersmc:modmenu:${project.findProperty("mod_menu_version")}")
  52.  
  53. modApi("me.shedaniel.cloth:cloth-config-fabric:${project.findProperty("cloth_config_version")}") {
  54. exclude(group = "net.fabricmc.fabric-api")
  55. }
  56.  
  57. // owo lib
  58. modImplementation("io.wispforest:owo-lib:${project.findProperty("owo_version")}")
  59. annotationProcessor("io.wispforest:owo-lib:${project.findProperty("owo_version")}")
  60. include("io.wispforest:owo-lib:${project.findProperty("owo_version")}")
  61.  
  62. implementation("com.moulberry:mixinconstraints:1.0.1")
  63. include("com.moulberry:mixinconstraints:1.0.1")
  64.  
  65. // MiniMessage
  66. modImplementation("net.kyori:adventure-platform-fabric:${project.findProperty("minimessage_version")}")
  67. include("net.kyori:adventure-platform-fabric:${project.findProperty("minimessage_version")}")
  68.  
  69.  
  70. // Dev only
  71. modRuntimeOnly("me.djtheredstoner:DevAuth-fabric:${project.findProperty("devauth_version")}")
  72. }
  73.  
  74. tasks.processResources {
  75. inputs.property("version", project.version)
  76. inputs.property("minecraft_version", project.property("minecraft_version"))
  77. inputs.property("loader_version", project.property("loader_version"))
  78. inputs.property("cloth_config_version", project.property("cloth_config_version"))
  79. inputs.property("mod_menu_version", project.property("mod_menu_version"))
  80. inputs.property("owo_version", project.property("owo_version"))
  81. filteringCharset = "UTF-8"
  82.  
  83. filesMatching("fabric.mod.json") {
  84. expand(
  85. "version" to project.version,
  86. "minecraft_version" to project.property("minecraft_version"),
  87. "fabric_version" to project.property("fabric_version"),
  88. "loader_version" to project.property("loader_version"),
  89. "cloth_config_version" to project.property("cloth_config_version"),
  90. "mod_menu_version" to project.property("mod_menu_version"),
  91. "owo_version" to project.property("owo_version")
  92. )
  93. }
  94. }
  95.  
  96. tasks.withType<JavaCompile>().configureEach {
  97. // ensure that the encoding is set to UTF-8, no matter what the system default is
  98. // this fixes some edge cases with special characters not displaying correctly
  99. // see http://yodaconditions.net/blog/fix-for-java-file-encoding-problems-with-gradle.html
  100. // If Javadoc is generated, this must be specified in that task too.
  101. options.encoding = "UTF-8"
  102. options.release.set(targetJavaVersion)
  103. }
  104.  
  105. //tasks.withType<KotlinCompile>().configureEach {
  106. // compilerOptions.jvmTarget.set(JvmTarget.fromTarget(targetJavaVersion.toString()))
  107. //}
  108.  
  109. tasks.jar {
  110. from("LICENSE") {
  111. rename { "${it}_${project.base.archivesName}" }
  112. }
  113. }
  114.  
  115. // configure the maven publication
  116. publishing {
  117. publications {
  118. create<MavenPublication>("mavenJava") {
  119. artifactId = project.property("archives_base_name") as String
  120. from(components["java"])
  121. }
  122. }
  123.  
  124. // See https://docs.gradle.org/current/userguide/publishing_maven.html for information on how to set up publishing.
  125. repositories {
  126. // Add repositories to publish to here.
  127. // Notice: This block does NOT have the same function as the block in the top level.
  128. // The repositories here will be used for publishing your artifact, not for
  129. // retrieving dependencies.
  130. }
  131. }
  132.  
Advertisement
Add Comment
Please, Sign In to add comment