116 lines
4.6 KiB
Groovy
116 lines
4.6 KiB
Groovy
buildscript {
|
|
repositories {
|
|
jcenter()
|
|
maven { url = "http://files.minecraftforge.net/maven" }
|
|
}
|
|
dependencies {
|
|
classpath 'net.minecraftforge.gradle:ForgeGradle:2.3-SNAPSHOT'
|
|
}
|
|
}
|
|
apply plugin: 'net.minecraftforge.gradle.forge'
|
|
//Only edit below this line, the above code adds and enables the necessary things for Forge to be setup.
|
|
|
|
|
|
version = "4.2.1" // There, it matches semver, happy now?
|
|
group= "electroblob.wizardry"// http://maven.apache.org/guides/mini/guide-naming-conventions.html
|
|
archivesBaseName = "ElectroblobsWizardry"
|
|
|
|
sourceCompatibility = targetCompatibility = "1.8" // Need this here so eclipse task generates correctly.
|
|
compileJava {
|
|
sourceCompatibility = targetCompatibility = "1.8"
|
|
}
|
|
|
|
repositories {
|
|
maven {
|
|
// location of the maven that hosts JEI files
|
|
name = "Progwml6 maven"
|
|
url = "http://dvs1.progwml6.com/files/maven"
|
|
}
|
|
maven {
|
|
// location of a maven mirror for JEI files, as a fallback
|
|
name = "ModMaven"
|
|
url = "modmaven.k-4u.nl"
|
|
}
|
|
flatDir {
|
|
// evErYthINg hAS tO Be a mAVeN rEPoSiTOrY... (to use deobfProvided, for some reason)
|
|
// The lack of documentation is actually quite impressive, see the following threads:
|
|
// http://www.minecraftforge.net/forum/topic/44262-solved-how-to-build-mod-with-dependencies/
|
|
// https://www.minecraftforum.net/forums/mapping-and-modding-java-edition/mapping-and-modding-tutorials/2866817-setting-up-dependencies-in-minecraft-forge-with
|
|
// http://www.minecraftforge.net/forum/topic/44534-adding-dependencies-to-a-forge-project/
|
|
dirs "libsfordeobf" // Don't put src jars in libs or forge will think you have duplicate mods
|
|
}
|
|
|
|
}
|
|
|
|
minecraft {
|
|
version = "1.12.2-14.23.5.2814"
|
|
runDir = "run"
|
|
|
|
// the mappings can be changed at any time, and must be in the following format.
|
|
// snapshot_YYYYMMDD snapshot are built nightly.
|
|
// stable_# stables are built at the discretion of the MCP team.
|
|
// Use non-default mappings at your own risk. they may not always work.
|
|
// simply re-run your setup task after changing the mappings to update your workspace.
|
|
mappings = "stable_39"
|
|
// makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable.
|
|
}
|
|
|
|
dependencies {
|
|
// you may put jars on which you depend on in ./libs
|
|
// or you may define them like so..
|
|
//compile "some.group:artifact:version:classifier"
|
|
//compile "some.group:artifact:version"
|
|
|
|
// compile against the JEI API but do not include it at runtime
|
|
deobfProvided "mezz.jei:jei_${mc_version}:${jei_version}:api"
|
|
// at runtime, use the full JEI jar
|
|
runtime "mezz.jei:jei_${mc_version}:${jei_version}"
|
|
|
|
//deobfProvided "baubles:baubles-1.12:1.5.2:api" // #ihavenoideawhatimdoing #itjustworks
|
|
//runtime "baubles:baubles-1.12:1.5.2" // If in doubt, copy what already works
|
|
|
|
//deobfProvided "antiqueatlas:antiqueatlas-1.12.2:4.5.1:src"
|
|
//runtime "antiqueatlas:antiqueatlas-1.12.2:4.5.1"
|
|
|
|
// real examples
|
|
//compile 'com.mod-buildcraft:buildcraft:6.0.8:dev' // adds buildcraft to the dev env
|
|
//compile 'com.googlecode.efficient-java-matrix-library:ejml:0.24' // adds ejml to the dev env
|
|
|
|
// the 'provided' configuration is for optional dependencies that exist at compile-time but might not at runtime.
|
|
//provided 'com.mod-buildcraft:buildcraft:6.0.8:dev'
|
|
|
|
// the deobf configurations: 'deobfCompile' and 'deobfProvided' are the same as the normal compile and provided,
|
|
// except that these dependencies get remapped to your current MCP mappings
|
|
//deobfCompile 'com.mod-buildcraft:buildcraft:6.0.8:dev'
|
|
//deobfProvided 'com.mod-buildcraft:buildcraft:6.0.8:dev'
|
|
|
|
// for more info...
|
|
// http://www.gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html
|
|
// http://www.gradle.org/docs/current/userguide/dependency_management.html
|
|
|
|
}
|
|
|
|
task deobfJar(type: Jar) {
|
|
from sourceSets.main.output
|
|
classifier = 'deobf'
|
|
}
|
|
|
|
processResources {
|
|
// this will ensure that this task is redone when the versions change.
|
|
inputs.property "version", project.version
|
|
inputs.property "mcversion", project.minecraft.version
|
|
|
|
// replace stuff in mcmod.info, nothing else
|
|
from(sourceSets.main.resources.srcDirs) {
|
|
include 'mcmod.info'
|
|
|
|
// replace version and mcversion
|
|
expand 'version':project.version, 'mcversion':project.minecraft.version
|
|
}
|
|
|
|
// copy everything else except the mcmod.info
|
|
from(sourceSets.main.resources.srcDirs) {
|
|
exclude 'mcmod.info'
|
|
}
|
|
}
|