Advertisement
SkyCrafter0

build.gradle

May 9th, 2023
39
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.52 KB | None | 0 0
  1. plugins {
  2. id 'java'
  3. id 'eclipse'
  4. id 'maven-publish'
  5. id 'net.minecraftforge.gradle' version '5.1.+'
  6. id 'org.parchmentmc.librarian.forgegradle' version '1.+'
  7. id "com.github.johnrengelman.shadow" version "7.1.2"
  8. }
  9.  
  10. version = '1.0'
  11. group = 'com.skythecodemaster.skybot' // http://maven.apache.org/guides/mini/guide-naming-conventions.html
  12. archivesBaseName = 'skybot'
  13.  
  14. // Mojang ships Java 17 to end users in 1.18+, so your mod should target Java 17.
  15. java.toolchain.languageVersion = JavaLanguageVersion.of(17)
  16.  
  17. println "Java: ${System.getProperty 'java.version'}, JVM: ${System.getProperty 'java.vm.version'} (${System.getProperty 'java.vendor'}), Arch: ${System.getProperty 'os.arch'}"
  18. minecraft {
  19. mappings channel: 'parchment', version: '2022.08.14-1.19.2'
  20.  
  21. // accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg') // Currently, this location cannot be changed from the default.
  22.  
  23. // Default run configurations.
  24. // These can be tweaked, removed, or duplicated as needed.
  25. runs {
  26. client {
  27. workingDirectory project.file('run')
  28.  
  29. property 'forge.logging.markers', 'REGISTRIES'
  30.  
  31. property 'forge.logging.console.level', 'debug'
  32.  
  33. property 'forge.enabledGameTestNamespaces', 'skybot'
  34.  
  35. mods {
  36. skybot {
  37. source sourceSets.main
  38. }
  39. }
  40. }
  41.  
  42. server {
  43. workingDirectory project.file('run')
  44.  
  45. property 'forge.logging.markers', 'REGISTRIES'
  46.  
  47. property 'forge.logging.console.level', 'debug'
  48.  
  49. property 'forge.enabledGameTestNamespaces', 'skybot'
  50.  
  51. mods {
  52. skybot {
  53. source sourceSets.main
  54. }
  55. }
  56. }
  57.  
  58. gameTestServer {
  59. workingDirectory project.file('run')
  60.  
  61. property 'forge.logging.markers', 'REGISTRIES'
  62.  
  63. property 'forge.logging.console.level', 'debug'
  64.  
  65. property 'forge.enabledGameTestNamespaces', 'skybot'
  66.  
  67. mods {
  68. skybot {
  69. source sourceSets.main
  70. }
  71. }
  72. }
  73.  
  74. data {
  75. workingDirectory project.file('run')
  76.  
  77. property 'forge.logging.markers', 'REGISTRIES'
  78.  
  79. property 'forge.logging.console.level', 'debug'
  80.  
  81. args '--mod', 'skybot', '--all', '--output', file('src/generated/resources/'), '--existing', file('src/main/resources/')
  82.  
  83. mods {
  84. skybot {
  85. source sourceSets.main
  86. }
  87. }
  88. }
  89. }
  90. }
  91.  
  92. sourceSets.main.resources { srcDir 'src/generated/resources' }
  93.  
  94. repositories {
  95. }
  96.  
  97. configurations {
  98. // shade { transitive = false }
  99. // implementation.extendsFrom shade
  100. }
  101.  
  102. dependencies {
  103. shadow 'org.java-websocket:Java-WebSocket:1.5.3'
  104. minecraft 'net.minecraftforge:forge:1.19.2-43.2.6'
  105. }
  106.  
  107. shadowJar {
  108. baseName = 'skybot'
  109. version = '1.0.0'
  110. // dependencies {
  111. // include(('org.java-websocket:Java-WebSocket:1.5.3'))
  112. // include(('net.minecraftforge:forge:1.19.2-43.2.6'))
  113. // }
  114. manifest {
  115. attributes 'Main-Class': 'com.skythecodemaster.skybot'
  116. }
  117. configurations = [project.configurations.compileClasspath]
  118. }
  119.  
  120. jar {
  121. from configurations.runtimeClasspath.filter { it.name.endsWith('jar') }.collect { zipTree(it) }
  122. duplicatesStrategy = DuplicatesStrategy.INCLUDE
  123. manifest {
  124. attributes([
  125. "Main-Class" : "com.skythecodemaster.skybot",
  126. "Specification-Title" : "skybotmod",
  127. "Specification-Vendor" : "skythecodemaster",
  128. "Specification-Version" : "1", // We are version 1 of ourselves
  129. "Implementation-Title" : project.name,
  130. "Implementation-Version" : project.jar.archiveVersion,
  131. "Implementation-Vendor" : "skythecodemaster",
  132. "Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ")
  133. ])
  134. }
  135. }
  136.  
  137. jar.finalizedBy('reobfJar')
  138.  
  139. publishing {
  140. publications {
  141. mavenJava(MavenPublication) {
  142. artifact jar
  143. }
  144. }
  145. repositories {
  146. maven {
  147. url "file://${project.projectDir}/mcmodsrepo"
  148. }
  149. }
  150. }
  151.  
  152. tasks.withType(JavaCompile).configureEach {
  153. options.encoding = 'UTF-8' // Use the UTF-8 charset for Java compilation
  154. }
  155.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement