mirror of
https://github.com/GTNewHorizons/NotEnoughItems.git
synced 2026-10-25 20:32:20 +00:00
* Switch handler info loading from code to CSV * Add option to load from config or JAR * handlers.csv is still a WIP
158 lines
3.7 KiB
Groovy
158 lines
3.7 KiB
Groovy
buildscript {
|
|
repositories {
|
|
mavenCentral()
|
|
jcenter()
|
|
maven {
|
|
name = "gt"
|
|
url = "https://gregtech.overminddl1.com/"
|
|
}
|
|
maven {
|
|
name = "forge"
|
|
url = "http://files.minecraftforge.net/maven"
|
|
}
|
|
maven {
|
|
name = "jitpack"
|
|
url = "https://jitpack.io"
|
|
}
|
|
}
|
|
dependencies {
|
|
classpath "com.github.GTNH2:ForgeGradle:FG_1.2-SNAPSHOT"
|
|
}
|
|
}
|
|
|
|
plugins {
|
|
id("org.ajoberstar.grgit") version("3.1.1")
|
|
}
|
|
|
|
//add dependency repositories
|
|
repositories {
|
|
maven {
|
|
name = "chickenbones"
|
|
url = "http://chickenbones.net/maven"
|
|
}
|
|
}
|
|
|
|
apply plugin: "java"
|
|
apply plugin: "idea"
|
|
apply plugin: 'forge'
|
|
|
|
idea {
|
|
module {
|
|
inheritOutputDirs = true
|
|
downloadJavadoc = true
|
|
downloadSources = true
|
|
}
|
|
}
|
|
|
|
java {
|
|
sourceCompatibility = JavaVersion.VERSION_1_8
|
|
targetCompatibility = JavaVersion.VERSION_1_8
|
|
}
|
|
|
|
group = "codechicken"
|
|
archivesBaseName = "NotEnoughItems"
|
|
|
|
// Define properties file
|
|
ext.configFile = file "build.properties"
|
|
|
|
configFile.withReader {
|
|
// Load config. It shall from now be referenced as simply config or project.config
|
|
def prop = new Properties()
|
|
prop.load(it)
|
|
project.ext.config = new ConfigSlurper().parse prop
|
|
}
|
|
//
|
|
//configurations.all {
|
|
// resolutionStrategy.cacheChangingModulesFor(0, TimeUnit.SECONDS)
|
|
// setTransitive(false)
|
|
//}
|
|
|
|
configurations {
|
|
shade
|
|
compile.extendsFrom shade
|
|
}
|
|
|
|
dependencies {
|
|
compile "codechicken:CodeChickenLib:${config.mc_version}-${config.ccl_version}:dev"
|
|
compile "codechicken:CodeChickenCore:${config.mc_version}-${config.ccc_version}:dev"
|
|
shade "org.apache.commons:commons-csv:1.5"
|
|
}
|
|
|
|
|
|
version = "${project.config.mod_version}"
|
|
|
|
println config.mc_version + "-" + config.forge_version
|
|
// Setup the forge minecraft plugin data. Specify the preferred forge/minecraft version here
|
|
minecraft {
|
|
version = config.mc_version + "-" + config.forge_version
|
|
}
|
|
|
|
def root = project.projectDir;
|
|
sourceSets {
|
|
main {
|
|
java {
|
|
srcDir new File(root, "src")
|
|
}
|
|
resources {
|
|
srcDir new File(root, "resources")
|
|
}
|
|
}
|
|
}
|
|
|
|
processResources {
|
|
//redo task if any of these properties change
|
|
inputs.property "version", project.version
|
|
inputs.property "mc_version", config.mc_version
|
|
|
|
// Replace properties in info files
|
|
from(sourceSets.main.resources.srcDirs) {
|
|
include '*.info'
|
|
expand 'version':project.version,'mc_version':config.mc_version
|
|
}
|
|
|
|
// Move access transformer to META-INF
|
|
rename '(.+_at.cfg)', 'META-INF/$1'
|
|
//
|
|
// // copy everything else, that's not the mcmod.info
|
|
// from(sourceSets.main.resources.srcDirs) {
|
|
// exclude "mcmod.info"
|
|
// }
|
|
}
|
|
|
|
version = "${project.minecraft.version}-${project.version}"
|
|
def commonManifest = {
|
|
attributes 'FMLCorePlugin': 'codechicken.nei.asm.NEICorePlugin'
|
|
attributes 'FMLAT': 'nei_at.cfg'
|
|
}
|
|
|
|
jar {
|
|
getArchiveClassifier().set("universal")
|
|
manifest commonManifest
|
|
configurations.shade.each { dep ->
|
|
from(project.zipTree(dep)){
|
|
exclude 'META-INF', 'META-INF/**'
|
|
}
|
|
}
|
|
}
|
|
|
|
task sourceJar(type: Jar) {
|
|
from sourceSets.main.java
|
|
from new File(root, "dev")
|
|
getArchiveClassifier().set("src")
|
|
}
|
|
|
|
task devJar(type: Jar) {
|
|
from sourceSets.main.output
|
|
getArchiveClassifier().set("dev")
|
|
manifest commonManifest
|
|
}
|
|
|
|
// Tell the artifact system about our extra jars
|
|
artifacts {
|
|
archives sourceJar, devJar
|
|
}
|
|
|
|
minecraft {
|
|
srgExtra "PK: org/apache/commons/csv nei/org/apache/commons/csv"
|
|
srgExtra "PK: org/apache/commons/csv/CSVFormat nei/org/apache/commons/csv/CSVFormat"
|
|
} |