Advertisement
Guest User

Gradle Build

a guest
Oct 21st, 2019
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.49 KB | None | 0 0
  1. buildscript {
  2. repositories {
  3. maven { url = 'https://files.minecraftforge.net/maven' }
  4. jcenter()
  5. mavenCentral()
  6. }
  7. dependencies {
  8. classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '3.+', changing: true
  9. }
  10. }
  11. apply plugin: 'net.minecraftforge.gradle'
  12. // Only edit below this line, the above code adds and enables the necessary things for Forge to be setup.
  13. apply plugin: 'eclipse'
  14. apply plugin: 'maven-publish'
  15.  
  16. version = '1.0'
  17. group = 'com.yourname.modid' // http://maven.apache.org/guides/mini/guide-naming-conventions.html
  18. archivesBaseName = 'modid'
  19.  
  20. sourceCompatibility = targetCompatibility = compileJava.sourceCompatibility = compileJava.targetCompatibility = '1.8' // Need this here so eclipse task generates correctly.
  21.  
  22. minecraft {
  23. // The mappings can be changed at any time, and must be in the following format.
  24. // snapshot_YYYYMMDD Snapshot are built nightly.
  25. // stable_# Stables are built at the discretion of the MCP team.
  26. // Use non-default mappings at your own risk. they may not always work.
  27. // Simply re-run your setup task after changing the mappings to update your workspace.
  28. mappings channel: 'snapshot', version: '20190719-1.14.3'
  29. // makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable.
  30.  
  31. // accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg')
  32.  
  33. // Default run configurations.
  34. // These can be tweaked, removed, or duplicated as needed.
  35. runs {
  36. client {
  37. workingDirectory project.file('run')
  38.  
  39. // Recommended logging data for a userdev environment
  40. property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP'
  41.  
  42. // Recommended logging level for the console
  43. property 'forge.logging.console.level', 'debug'
  44.  
  45. mods {
  46. examplemod {
  47. source sourceSets.main
  48. }
  49. }
  50. }
  51.  
  52. server {
  53. workingDirectory project.file('run')
  54.  
  55. // Recommended logging data for a userdev environment
  56. property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP'
  57.  
  58. // Recommended logging level for the console
  59. property 'forge.logging.console.level', 'debug'
  60.  
  61. mods {
  62. examplemod {
  63. source sourceSets.main
  64. }
  65. }
  66. }
  67.  
  68. data {
  69. workingDirectory project.file('run')
  70.  
  71. // Recommended logging data for a userdev environment
  72. property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP'
  73.  
  74. // Recommended logging level for the console
  75. property 'forge.logging.console.level', 'debug'
  76.  
  77. args '--mod', 'examplemod', '--all', '--output', file('src/generated/resources/')
  78.  
  79. mods {
  80. examplemod {
  81. source sourceSets.main
  82. }
  83. }
  84. }
  85. }
  86. }
  87.  
  88. repositories {
  89. maven {
  90. url = "https://maven.theillusivec4.top"
  91. }
  92. }
  93.  
  94. dependencies {
  95. minecraft 'net.minecraftforge:forge:1.14.4-28.1.0'
  96. compile 'top.theillusivec4.caelus:caelus:FORGE-1.14.4-1.0'
  97. }
  98.  
  99. // Example for how to get properties into the manifest for reading by the runtime..
  100. jar {
  101. manifest {
  102. attributes([
  103. "Specification-Title": "examplemod",
  104. "Specification-Vendor": "examplemodsareus",
  105. "Specification-Version": "1", // We are version 1 of ourselves
  106. "Implementation-Title": project.name,
  107. "Implementation-Version": "${version}",
  108. "Implementation-Vendor" :"examplemodsareus",
  109. "Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ")
  110. ])
  111. }
  112. }
  113.  
  114. // Example configuration to allow publishing using the maven-publish task
  115. // we define a custom artifact that is sourced from the reobfJar output task
  116. // and then declare that to be published
  117. // Note you'll need to add a repository here
  118. def reobfFile = file("$buildDir/reobfJar/output.jar")
  119. def reobfArtifact = artifacts.add('default', reobfFile) {
  120. type 'jar'
  121. builtBy 'reobfJar'
  122. }
  123. publishing {
  124. publications {
  125. mavenJava(MavenPublication) {
  126. artifact reobfArtifact
  127. }
  128. }
  129. repositories {
  130. maven {
  131. url "file:///${project.projectDir}/mcmodsrepo"
  132. }
  133. }
  134. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement