From 013c8d882c69b0d3cb402c66053e02f80d63de9a Mon Sep 17 00:00:00 2001 From: thatsIch Date: Sat, 25 Apr 2015 10:01:09 +0200 Subject: [PATCH] Makes maven dependencies de- and installable Provides a new configuration `mods` which can be used on Maven Artifacts. That way, we can install them without affecting them on runtime (less load time) Put the optional tasks into `optional.gradle` where a install task is just a copy task and the deinstall task a delete task Added maven local to the repositories, if for some reason somebody uses a local maven --- build.gradle | 2 + gradle.properties | 33 +++++-- gradle/scripts/dependencies.gradle | 75 +++++++++++++--- gradle/scripts/optional.gradle | 106 +++++++++++++++++++++++ gradle/wrapper/gradle-wrapper.jar | Bin 51017 -> 52280 bytes gradle/wrapper/gradle-wrapper.properties | 4 +- 6 files changed, 200 insertions(+), 20 deletions(-) create mode 100644 gradle/scripts/optional.gradle diff --git a/build.gradle b/build.gradle index 878a2d417..759e0bfaa 100644 --- a/build.gradle +++ b/build.gradle @@ -22,9 +22,11 @@ apply from: 'gradle/scripts/dependencies.gradle' apply from: 'gradle/scripts/artifacts.gradle' apply from: 'gradle/scripts/autoinstallruntime.gradle' apply from: 'gradle/scripts/integration.gradle' +apply from: 'gradle/scripts/optional.gradle' buildscript { repositories { + mavenLocal() mavenCentral() maven { diff --git a/gradle.properties b/gradle.properties index 758b895b3..07204f9ec 100644 --- a/gradle.properties +++ b/gradle.properties @@ -11,7 +11,23 @@ minecraft_version=1.7.10 forge_version=10.13.2.1291 ######################################################### -# APIs used for development # +# Installable # +######################################################### +waila_version=1.5.10 +jabba_version=1.2.1a +enderstorage_version=1.4.7.33 +translocator_version=1.1.1.14 +ic2_version=2.2.717 +enderio_version=2.3.0.375_beta +#cofhlib_version=1.0.1-157 +#cofhcore_version=3.0.2-270 +#texpansion_version=4.0.0-176 +#tfoundation_version=1.0.0-82 +betterstorage_version=0.11.3.123.20 +invtweaks_version=1.59-dev-3 + +######################################################### +# Provided APIs # ######################################################### fmp_version=1.1.1.324 code_chicken_lib_version=1.1.3.127 @@ -20,21 +36,22 @@ nei_version=1.0.4.90 bc_version=6.4.6 ######################################################### -# API Stubs # +# Self Compiled APIs # +######################################################### +mekansim_version=8.0.1.198 +rotarycraft_version=V5c + + +######################################################### +# Self Compiled API Stubs # # Note: Do not edit these version numbers as they are # # not the version of the mod, but stub code for AE2 to # # compile # ######################################################### -api_betterstorage_version=1 api_coloredlightscore_version=1 api_craftguide_version=1 -api_ic2_version=1 api_immibis_version=1 -api_invtweaks_version=1 -api_mekansim_version=1.7.10-8.0.1.198 api_mfr_version=1 api_railcraft_version=1 api_rblocks_version=1 api_rf_version=2 -api_rotarycraft_version=V5c -api_waila_version=1.5.10_1.7.10 \ No newline at end of file diff --git a/gradle/scripts/dependencies.gradle b/gradle/scripts/dependencies.gradle index 4240c376f..e8b65ff9e 100644 --- a/gradle/scripts/dependencies.gradle +++ b/gradle/scripts/dependencies.gradle @@ -19,14 +19,14 @@ repositories { - + mavenLocal() maven { - name 'CB Maven FS' + name "ChickenBones" url "http://chickenbones.net/maven/" } maven { - name "Waila Mobius Repo" + name "Mobius" url "http://mobiusstrip.eu/maven" } @@ -34,31 +34,86 @@ repositories { name "FireBall API Depot" url "http://dl.tsr.me/artifactory/libs-release-local" } + + maven { + name = "Player" + url = "http://maven.ic2.player.to/" + } + + maven { + name = "Tterrag" + url = "http://maven.tterrag.com/" + } + + maven { + name = "RX14 Proxy" + url = "http://mvn.rx14.co.uk/repo/" + } +// CurseForge DNS for TE is not available or I am just being unlucky, code part can stay since this is applicable to any other curseforge mod though +// ivy { +// name = "CoFHLib" +// artifactPattern "http://addons.cursecdn.com/files/2212/893/[module]-[revision].[ext]" +// } +// +// ivy { +// name = "CoFHCore" +// artifactPattern "http://addons.cursecdn.com/files/2212/895/[module]-[revision].[ext]" +// } + +// ivy { +// name = "ThermalExpansion" +// artifactPattern "http://addons.curse.cursecdn.com/files/2212/446/[module]-[revision].[ext]" +// } + +// ivy { +// name = "ThermalFoundation" +// artifactPattern "http://addons.curse.cursecdn.com/files/2212/444/[module]-[revision].[ext]" +// } +} + +configurations { + mods } dependencies { + // installable + mods "mcp.mobius.waila:Waila:${waila_version}_${minecraft_version}:dev" + mods "mcp.mobius.jabba:Jabba:${jabba_version}_${minecraft_version}:dev" + mods "codechicken:EnderStorage:${minecraft_version}-${enderstorage_version}:dev" + mods "codechicken:Translocator:${minecraft_version}-${translocator_version}:dev" + mods "net.industrial-craft:industrialcraft-2:${ic2_version}-experimental:dev" + mods "com.enderio:EnderIO:${minecraft_version}-${enderio_version}:dev" + mods "net.mcft.copy.betterstorage:BetterStorage:${minecraft_version}-${betterstorage_version}:deobf" + mods "inventorytweaks:InventoryTweaks:${invtweaks_version}:deobf" +// mods name: 'CoFHLib', version: "[${minecraft_version}]${cofhlib_version}-dev", ext: 'jar' +// mods name: 'CoFHCore', version: "[${minecraft_version}]${cofhcore_version}-dev", ext: 'jar' +// mods name: 'ThermalExpansion', version: "[${minecraft_version}]${texpansion_version}-dev", ext: 'jar' +// mods name: 'ThermalFoundation', version: "[${minecraft_version}]${tfoundation_version}-dev", ext: 'jar' compile "codechicken:ForgeMultipart:${minecraft_version}-${fmp_version}:dev" compile "codechicken:CodeChickenLib:${minecraft_version}-${code_chicken_lib_version}:dev" compile "codechicken:CodeChickenCore:${minecraft_version}-${code_chicken_core_version}:dev" compile "codechicken:NotEnoughItems:${minecraft_version}-${nei_version}:dev" - compile "com.mod-buildcraft:buildcraft:${bc_version}:dev" + // provided APIs + compile "net.industrial-craft:industrialcraft-2:${ic2_version}-experimental:api" + compile "net.mcft.copy.betterstorage:BetterStorage:${minecraft_version}-${betterstorage_version}:api" + compile "inventorytweaks:InventoryTweaks:${invtweaks_version}:api" + // self compiled APIs - compile(group: 'api', name: 'betterstorage', version: "${api_betterstorage_version}") + compile "appeng:Waila:${waila_version}_${minecraft_version}:api" + compile "appeng:RotaryCraft:${rotarycraft_version}:api" + compile "appeng:mekanism:${minecraft_version}-${mekansim_version}:api" + + // self compiled stubs compile(group: 'api', name: 'coloredlightscore', version: "${api_coloredlightscore_version}") compile(group: 'api', name: 'craftguide', version: "${api_craftguide_version}") - compile(group: 'api', name: 'ic2', version: "${api_ic2_version}") compile(group: 'api', name: 'immibis', version: "${api_immibis_version}") - compile(group: 'api', name: 'invtweaks', version: "${api_invtweaks_version}") compile(group: 'api', name: 'mfr', version: "${api_mfr_version}") compile(group: 'api', name: 'railcraft', version: "${api_railcraft_version}") compile(group: 'api', name: 'rblocks', version: "${api_rblocks_version}") compile(group: 'api', name: 'rf', version: "${api_rf_version}") - compile "appeng:Waila:${api_waila_version}:api" - compile "appeng:RotaryCraft:${api_rotarycraft_version}:api" - compile "appeng:mekanism:${api_mekansim_version}:api" testCompile "junit:junit:4.11" } diff --git a/gradle/scripts/optional.gradle b/gradle/scripts/optional.gradle new file mode 100644 index 000000000..452232289 --- /dev/null +++ b/gradle/scripts/optional.gradle @@ -0,0 +1,106 @@ +task wrapper(type: Wrapper) { + gradleVersion = "2.3" +} + +// WAILA +task installWaila(type: Copy, dependsOn: "deinstallWaila") { + from { configurations.mods } + include "**/*Waila*dev.jar" + into file(minecraft.runDir + "/mods") +} + +task deinstallWaila(type: Delete) { + delete fileTree(dir: minecraft.runDir + "/mods", include: "*Waila*.jar") +} + +// JABBA +task installJabba(type: Copy, dependsOn: "deinstallJabba") { + from { configurations.mods } + include "**/*Jabba*dev.jar" + into file(minecraft.runDir + "/mods") +} + +task deinstallJabba(type: Delete) { + delete fileTree(dir: minecraft.runDir + "/mods", include: "*Jabba*.jar") +} + +// ENDER STORAGE +task installEnderStorage(type: Copy, dependsOn: "deinstallEnderStorage") { + from { configurations.mods } + include "**/*EnderStorage*dev.jar" + into file(minecraft.runDir + "/mods") +} + +task deinstallEnderStorage(type: Delete) { + delete fileTree(dir: minecraft.runDir + "/mods", include: "*EnderStorage*.jar") +} + +// TRANSLOCATOR +task installTranslocator(type: Copy, dependsOn: "deinstallTranslocator") { + from { configurations.mods } + include "**/*Translocator*dev.jar" + into file(minecraft.runDir + "/mods") +} + +task deinstallTranslocator(type: Delete) { + delete fileTree(dir: minecraft.runDir + "/mods", include: "*Translocator*.jar") +} + +// INDUSTRIALCRAFT +task installIC2(type: Copy, dependsOn: "deinstallIC2") { + from { configurations.mods } + include "**/*industrialcraft*dev.jar" + into file(minecraft.runDir + "/mods") +} + +task deinstallIC2(type: Delete) { + delete fileTree(dir: minecraft.runDir + "/mods", include: "*industrialcraft*.jar") +} + +// ENDER IO +task installEnderIO(type: Copy, dependsOn: "deinstallEnderIO") { + from { configurations.mods } + include "**/*EnderIO*dev.jar" + into file(minecraft.runDir + "/mods") +} + +task deinstallEnderIO(type: Delete) { + delete fileTree(dir: minecraft.runDir + "/mods", include: "*EnderIO*.jar") +} + +// TE +//task installTE(type: Copy, dependsOn: "deinstallTE") { +// from { configurations.mods } +// include "**/*CoFHLib*.jar" +// include "**/*CoFHCore*.jar" +// include "**/*ThermalFoundation*.jar" +// include "**/*ThermalExpansion*.jar" +// +// into file(minecraft.runDir + "/mods") +//} +// +//task deinstallTE(type: Delete) { +// delete fileTree(dir: minecraft.runDir + "/mods", includes: ["*CoFHLib*.jar", "*CoFHCore*.jar", "*ThermalFoundation*.jar", "*ThermalExpansion*.jar"]) +//} + +// INV TWEAKS +task installInvTweaks(type: Copy, dependsOn: "deinstallInvTweaks") { + from { configurations.mods } + include "**/*InventoryTweaks*dev*.jar" + into file(minecraft.runDir + "/mods") +} + +task deinstallInvTweaks(type: Delete) { + delete fileTree(dir: minecraft.runDir + "/mods", include: "*InventoryTweaks*.jar") +} + +// BETTER STORAGE +task installBetterStorage(type: Copy, dependsOn: "deinstallBetterStorage") { + from { configurations.mods } + include "**/*BetterStorage*deobf*.jar" + into file(minecraft.runDir + "/mods") +} + +task deinstallBetterStorage(type: Delete) { + delete fileTree(dir: minecraft.runDir + "/mods", include: "*BetterStorage*.jar") +} \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index b7612167031001b7b84baf2a959e8ea8ad03c011..087988e36e7e6ef87792046dcb7b6791acfaaeb4 100644 GIT binary patch delta 23150 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 DZiCp8 delta 21977 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 r1E&?ihJxxAcLoLqR|W