seppuku/build.gradle

121 lines
3.4 KiB
Groovy

buildscript {
repositories {
jcenter()
maven {
url = "http://files.minecraftforge.net/maven"
}
}
dependencies {
classpath 'net.minecraftforge.gradle:ForgeGradle:2.3-SNAPSHOT'
classpath "com.github.jengelman.gradle.plugins:shadow:1.2.3"
}
}
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.
apply plugin: "com.github.johnrengelman.shadow"
version = "1.0"
group = "com.yourname.modid" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
archivesBaseName = "seppuku-1.12.2"
sourceCompatibility = targetCompatibility = '1.8' // Need this here so eclipse task generates correctly.
compileJava {
sourceCompatibility = targetCompatibility = '1.8'
}
minecraft {
version = "1.12.2-14.23.5.2768"
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 = "snapshot_20171003"
// makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable.
}
dependencies {
compile files('lib/json-simple-1.1.1.jar')
}
jar {
manifest {
attributes 'FMLCorePlugin': 'me.rigamortis.seppuku.impl.fml.core.SeppukuLoadingPlugin'
attributes 'FMLCorePluginContainsFMLMod': 'true'
attributes 'FMLAT': 'seppuku_at.cfg'
}
}
reobf {
jar {
mappingType = 'SEARGE'
}
shadowJar {
//mappingType = 'NOTCH'
mappingType = 'SEARGE'
classpath = sourceSets.main.compileClasspath
}
}
shadowJar {
dependencies {
include(dependency('org.json.simple:parser'))
include(dependency('net.minecraftforge.gradle:ForgeGradle:2.3-SNAPSHOT'))
}
manifest {
attributes 'FMLCorePlugin': 'me.rigamortis.seppuku.impl.fml.core.SeppukuLoadingPlugin'
attributes 'FMLCorePluginContainsFMLMod': 'true'
attributes 'FMLAT': 'seppuku_at.cfg'
}
exclude 'dummyThing'
exclude 'LICENSE.txt'
classifier = 'full'
}
task signJar(type: SignJar, dependsOn: reobfJar) {
onlyIf {
project.hasProperty('keyStore')
}
keyStore = project.findProperty('keyStore')
alias = project.findProperty('keyStoreAlias')
storePass = project.findProperty('keyStorePass')
keyPass = project.findProperty('keyStoreKeyPass')
inputFile = jar.archivePath
outputFile = jar.archivePath
}
build.dependsOn {[
'shadowJar',
'reobfShadowJar',
'signJar'
]}
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'
}
}