-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.gradle
122 lines (102 loc) · 5.34 KB
/
build.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
// ______ __ _ __ __ _
// / ____/___ ____ _____/ /_(_) /___ __/ /_(_)___ ____
// / / / __ \/ __ \/ ___/ __/ / __/ / / / __/ / __ \/ __ \
// / /___/ /_/ / / / (__ ) /_/ / /_/ /_/ / /_/ / /_/ / / / /
// \____/\____/_/ /_/____/\__/_/\__/\__,_/\__/_/\____/_/ /_/
// __ ___ __
// / |/ /___ ____/ /
// / /|_/ / __ \/ __ /
// / / / / /_/ / /_/ /
// /_/ /_/\____/\__,_/
// ____ _ __ _______ _ __
// / __ )__ __(_) /___/ / ___/__________(_)___ / /_
// / __ / / / / / / __ /\__ \/ ___/ ___/ / __ \/ __/
// / /_/ / /_/ / / / /_/ /___/ / /__/ / / / /_/ / /_
// /_____/\__,_/_/_/\__,_//____/\___/_/ /_/ .___/\__/
// /_/
//#####################################################################################################################
buildscript {
repositories {
jcenter()
maven { url = "http://files.minecraftforge.net/maven" }
}
dependencies {
classpath 'net.minecraftforge.gradle:ForgeGradle:2.3-SNAPSHOT'
}
}
//##############################################[Plugin(s) Configuration]##############################################
plugins {
id 'com.matthewprenger.cursegradle' version '1.3.0'
}
apply plugin: 'net.minecraftforge.gradle.forge'
//##############################################[External Configuration]##############################################
ext.configFile = file "gradle.properties"
ext.configFile.withReader {
def prop = new Properties()
prop.load(it)
ext.config = new ConfigSlurper().parse prop
}
//###############################################[TravisCI Integration]###############################################
if (System.env.TRAVIS_TAG != null && !System.env.TRAVIS_TAG.isEmpty()) {
ext.config.build_version = System.env.TRAVIS_TAG.substring(0, System.env.TRAVIS_TAG.length()-1)
ext.config.build_type = System.env.TRAVIS_TAG.substring(System.env.TRAVIS_TAG.length()-1)
}
//################################################[Project Versioning]################################################
group= ""
version = "${version_minecraft}-${build_version}${build_type}"
archivesBaseName = "${build_name}"
//################################################[JAVA Compatability]################################################
sourceCompatibility = targetCompatibility = '1.8'
compileJava {
sourceCompatibility = targetCompatibility = '1.8'
}
//################################################[Minecraft Versions]################################################
minecraft {
version = "${version_long}"
mappings = "${version_mappings}"
useDepAts = false
runDir = "run"
replace "@VERSION", project.build_version
replaceIn "Constants.java"
}
//################################################[Dependency Controls]################################################
dependencies {
compile "org.xerial:sqlite-jdbc:3.8.5-pre1"
compile "mysql:mysql-connector-java:5.1.32"
compile "org.beanshell:bsh:2.0b5"
}
//################################################[Resource Processing]################################################
processResources {
inputs.property "version", project.version
inputs.property "mcversion", project.minecraft.version
from(sourceSets.main.resources.srcDirs) {
include 'mcmod.info'
expand 'version' : project.version,
'mcversion' : project.minecraft.version
}
from(sourceSets.main.resources.srcDirs) {
exclude 'mcmod.info'
}
//################################################[CurseForge Uploading]################################################
curseforge {
apiKey = System.env.CURSEFORGEKEY ?: "${CURSEFORGEKEY}" ?: '00000000-0000-0000-0000-000000000000'
project {
id = "${curse_id}"
changelog = "<h2>+${build_changelog}+</h2>"
changelogType = "${curse_changelog_type}"
releaseType = config.build_type.equals('[A]') ? "alpha" : (config.build_type.equals('[B]') ? "beta" : "release")
addGameVersion "${version_mcsupport}"
}
}
//################################################[My Dependency Loader]################################################
jar {
classifier = ''
manifest {
attributes (
'FMLCorePlugin': 'constitution.DependencyLoader',
'FMLCorePluginContainsFMLMod': 'true'
)
}
}
//######################################################################################################################
}