Advertisement
GamingZacharyC

build.gradle - Aetherium

Apr 20th, 2020
330
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Groovy 3.17 KB | None | 0 0
  1. buildscript {
  2.     configurations {
  3.         // something for SMR
  4.         embedNoCompile
  5.     }
  6.  
  7.     repositories {
  8.         jcenter()
  9.         maven {
  10.             // Forge Maven
  11.             url = "http://files.minecraftforge.net/maven"
  12.         }
  13.  
  14.         maven {
  15.             // JEI Maven
  16.             name = "Progwml6 maven"
  17.             url = "https://dvs1.progwml6.com/files/maven/"
  18.         }
  19.  
  20.         maven {
  21.             // JEI Maven - Mirror (fallback)
  22.             name = "ModMaven"
  23.             url = "https://modmaven.k-4u.nl"
  24.         }
  25.         maven {
  26.             // Curseforge Maven
  27.             name 'Curseforge Maven'
  28.             url 'http://minecraft.curseforge.com/api/maven/'
  29.         }
  30.         maven {
  31.             // STOP.MOD.REPOSTS
  32.             url = "https://mvn.stopmodreposts.org/"
  33.         }
  34.  
  35.     }
  36.     dependencies {
  37.         // I. NEED. FORGE. RECCOMENDED OR LATER!!!
  38.         classpath 'net.minecraftforge.gradle:ForgeGradle:2.3-SNAPSHOT'
  39.         // This mod cannot function without TC - B26
  40.         compile "thaumcraft:Thaumcraft:1.12.2:6.1.BETA26"
  41.         // STOP MOD REPOSTS
  42.        embedNoCompile "org.stopmodreposts:stopmodreposts:${mc_version}-${stopmodreposts_version}"
  43.     }
  44.  
  45.     jar{
  46.         into('META-INF/libraries'){
  47.             // STOP.MOD.REPOSTS
  48.             from configurations.embedNoCompile
  49.         }
  50.  
  51.         manifest {
  52.             attributes([
  53.                 // STOP.MOD.REPOSTS
  54.                 'ContainedDeps': configurations.embedNoCompile.collect { it.getName() }.join(' ')
  55.             ])
  56.         }
  57.     }
  58. }
  59. apply plugin: 'net.minecraftforge.gradle.forge'
  60.  
  61. version = "${mod.version}" // Version.Subversion.State.BuildNumber (ex. 1.0.3.01 = Version 1.0, Release 01)
  62. group = "com.gamingzacharyc.aetherium"
  63. archivesBaseName = "aetherium"
  64.  
  65. //Mess with thy not!
  66. sourceCompatibility = targetCompatibility = '1.8'
  67. compileJava {
  68.     sourceCompatibility = targetCompatibility = '1.8'
  69. }
  70.  
  71. // Automated from variables!
  72. minecraft {
  73.     version = "${mod.mcversion}"
  74.     runDir = 'run'
  75.     mappings = "${version_mappings}"
  76.     replace '${mod_version}', project.version
  77. }
  78. // Stuff to exclude and include in the final project
  79. processResources {
  80.     inputs.property "version", project.version
  81.     inputs.property "mcversion", project.minecraft.version
  82.     from(sourceSets.main.resources.srcDirs) {
  83.         include 'mcmod.info'
  84.         expand 'version': project.version, 'mcversion': project.minecraft.version
  85.     }
  86.     from(sourceSets.main.resources.srcDirs) {
  87.         exclude 'mcmod.info'
  88.     }
  89. }
  90. dependencies = "required-before:thaumcraft"
  91. runClient.outputs.upToDateWhen { false }
  92. runServer.outputs.upToDateWhen { false }
  93.  
  94. // Stuff to work with Curse
  95. curseforge {
  96.     apiKey = System.getenv('CURSEFORGE_KEY') ?: 0
  97.     project {
  98.         id = "${curseforge_id}"
  99.         releaseType = System.getenv('CURSEFORGE_RELEASE') ?: 'release'
  100.         addGameVersion "${version_minecraft}"
  101.         changelog = System.getenv('CHANGELOG') ?: file('changelog.md')
  102.         changelogType = 'markdown'
  103.         relations {
  104.             optionalDependency 'jei'
  105.             requiredDependecy 'thaumcraft'
  106.         }
  107.         mainArtifact(jar)
  108.         addArtifact(sourceJar)
  109.     }
  110. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement