mirror of
https://github.com/GTNewHorizons/NotEnoughItems.git
synced 2026-10-26 14:24:07 +00:00
131 lines
3.1 KiB
Groovy
131 lines
3.1 KiB
Groovy
buildscript {
|
|
repositories {
|
|
mavenCentral()
|
|
maven {
|
|
name = "forge"
|
|
url = "http://files.minecraftforge.net/maven"
|
|
}
|
|
maven {
|
|
name = "sonatype"
|
|
url = "https://oss.sonatype.org/content/repositories/snapshots/"
|
|
}
|
|
}
|
|
dependencies {
|
|
classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'
|
|
}
|
|
}
|
|
|
|
//add dependency repositories
|
|
repositories {
|
|
maven {
|
|
name = "chickenbones"
|
|
url = "http://chickenbones.net/maven"
|
|
}
|
|
}
|
|
|
|
apply plugin: 'forge'
|
|
|
|
group = "codechicken" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
|
|
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
|
|
}
|
|
|
|
dependencies {
|
|
compile "codechicken:CodeChickenLib:${config.mc_version}-${config.ccl_version}:dev"
|
|
compile "codechicken:CodeChickenCore:${config.mc_version}-${config.ccc_version}:dev"
|
|
}
|
|
|
|
version = "${project.config.mod_version}"
|
|
|
|
sourceCompatibility = JavaVersion.VERSION_1_8
|
|
targetCompatibility = JavaVersion.VERSION_1_8
|
|
sourceCompatibility = 1.8
|
|
targetCompatibility = 1.8
|
|
|
|
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'
|
|
}
|
|
|
|
version = "${project.minecraft.version}-${project.version}"
|
|
def commonManifest = {
|
|
attributes 'FMLCorePlugin': 'codechicken.nei.asm.NEICorePlugin'
|
|
attributes 'FMLAT': 'nei_at.cfg'
|
|
}
|
|
|
|
jar {
|
|
classifier = 'universal'
|
|
manifest commonManifest
|
|
}
|
|
|
|
task sourceJar(type: Jar) {
|
|
from sourceSets.main.java
|
|
from new File(root, "dev")
|
|
classifier = 'src'
|
|
}
|
|
|
|
task devJar(type: Jar) {
|
|
from sourceSets.main.output
|
|
classifier = 'dev'
|
|
manifest commonManifest
|
|
}
|
|
|
|
// Tell the artifact system about our extra jars
|
|
artifacts {
|
|
archives sourceJar, devJar
|
|
}
|
|
|
|
sourceSets {
|
|
main { output.resourcesDir = output.classesDir }
|
|
}
|
|
|
|
// Configure an upload task.
|
|
uploadArchives {
|
|
dependsOn 'reobf'
|
|
if (project.hasProperty("local_maven")) {
|
|
repositories {
|
|
logger.info('Publishing to local maven repo')
|
|
|
|
mavenDeployer {
|
|
repository(url: "file://${local_maven}")
|
|
}
|
|
}
|
|
}
|
|
}
|