1
+ buildscript {
2
+
3
+ repositories {
4
+
5
+ mavenCentral()
6
+
7
+ maven {
8
+ name = " forge"
9
+ url = " http://files.minecraftforge.net/maven"
10
+ }
11
+
12
+ maven {
13
+ name = " sonatype"
14
+ url = " https://oss.sonatype.org/content/repositories/snapshots/"
15
+ }
16
+
17
+ }
18
+
19
+ dependencies {
20
+ classpath ' net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'
21
+ }
22
+
23
+ }
24
+
25
+ apply plugin : ' forge'
26
+
27
+ repositories {
28
+
29
+ maven {
30
+ name ' CB Maven FS'
31
+ url " http://chickenbones.net/maven/"
32
+ }
33
+
34
+ maven {
35
+ name " IC2 Player Repo"
36
+ url " http://maven.ic2.player.to/"
37
+ }
38
+
39
+ maven {
40
+ name " Waila Mobius Repo"
41
+ url " http://mobiusstrip.eu/maven"
42
+ }
43
+
44
+ }
45
+
46
+ configurations. all {
47
+ resolutionStrategy. cacheDynamicVersionsFor 7200 , ' hours'
48
+ }
49
+
50
+ // define the properties file
51
+ ext. configFile = file " build.properties"
52
+
53
+ configFile. withReader {
54
+ // read config. it shall from now on be referenced as simply config or as project.config
55
+ def prop = new Properties ()
56
+ prop. load(it)
57
+ project. ext. config = new ConfigSlurper (). parse prop
58
+ }
59
+
60
+ targetCompatibility = JavaVersion . VERSION_1_6
61
+
62
+ version = config. version+ " -" + config. aechannel+ " -" + config. build
63
+ group = config. group
64
+ archivesBaseName = config. archivesBaseName
65
+
66
+ dependencies {
67
+
68
+ compile " net.industrial-craft:industrialcraft-2:${ config.ic2_version} -experimental:dev"
69
+
70
+ compile " codechicken:ForgeMultipart:${ config.cb_minecraft_version} -${ config.fmp_version} :dev"
71
+ compile " codechicken:CodeChickenLib:${ config.cb_minecraft_version} -${ config.code_chicken_lib_version} :dev"
72
+ compile " codechicken:CodeChickenCore:${ config.cb_minecraft_version} -${ config.code_chicken_core_version} :dev"
73
+ compile " codechicken:NotEnoughItems:${ config.cb_minecraft_version} -${ config.nei_version} :dev"
74
+
75
+ compile " mcp.mobius.waila:Waila:${ config.waila_version} "
76
+
77
+ compile files(fileTree(dir : ' libs' , includes : [' *.jar' ]))
78
+ // compile "com.mod-buildcraft:buildcraft:6.0.8:dev"
79
+ }
80
+
81
+
82
+ // Add Coremod Manifest
83
+ jar {
84
+
85
+ manifest {
86
+ attributes ' FMLCorePlugin' : ' appeng.transformer.AppEngCore'
87
+ attributes ' FMLCorePluginContainsFMLMod' : ' true'
88
+ }
89
+
90
+ }
91
+
92
+ compileJava {
93
+
94
+ exclude(" appeng/api/integration/*" )
95
+ exclude(" appeng/integration/modules/helpers/dead/**" )
96
+ exclude(" appeng/integration/modules/dead/**" )
97
+ // exclude("appeng/fmp/**")
98
+
99
+ }
100
+
101
+ minecraft {
102
+ version = config. minecraft_version + " -" + config. forge_version
103
+
104
+ replace " @version@" , project. version
105
+ replace " @aechannel@" , config. aechannel
106
+
107
+ runDir = " run"
108
+ }
109
+
110
+ sourceSets {
111
+
112
+ main {
113
+
114
+ java {
115
+ srcDirs + = ' src/main/java/'
116
+ srcDirs + = ' src/api/java/'
117
+ include ' appeng/api/**'
118
+ }
119
+
120
+ resources {
121
+ srcDir ' src/main/resources/'
122
+ include " assets/appliedenergistics2/recipes/*.recipe" ,
123
+ " assets/appliedenergistics2/lang/*.lang" ,
124
+ " assets/appliedenergistics2/textures/blocks/*" ,
125
+ " assets/appliedenergistics2/textures/guis/*" ,
126
+ " assets/appliedenergistics2/textures/models/*" ,
127
+ " assets/appliedenergistics2/textures/items/*"
128
+ }
129
+ }
130
+
131
+ }
132
+
133
+ processResources {
134
+
135
+ // replace stuff in mcmod.info, nothing else
136
+ from(sourceSets. main. resources. srcDirs) {
137
+ include ' mcmod.info'
138
+ expand ' version' : project. version, ' mcversion' : config. minecraft_version
139
+ }
140
+
141
+ // copy everything else, thats not the mcmod.info
142
+ from(sourceSets. main. resources. srcDirs) {
143
+ exclude ' mcmod.info'
144
+ }
145
+ }
146
+
147
+ task myJavadocs (type : Javadoc ) {
148
+ source = sourceSets. api. java
149
+ include " appeng/api/**"
150
+
151
+ classpath = configurations. compile
152
+ }
153
+
154
+ task javadocJar (type : Jar , dependsOn : myJavadocs) {
155
+ classifier = ' javadoc'
156
+ from ' build/docs/javadoc/'
157
+ }
158
+
159
+ task devJar (type : Jar ) {
160
+
161
+ manifest {
162
+ attributes ' FMLCorePlugin' : ' appeng.transformer.AppEngCore'
163
+ attributes ' FMLCorePluginContainsFMLMod' : ' true'
164
+ }
165
+
166
+ from(sourceSets. main. output) {
167
+ include " appeng/**"
168
+ include " assets/**"
169
+ include ' mcmod.info'
170
+ }
171
+
172
+ classifier = ' dev'
173
+ }
174
+
175
+ task apiJar (type : Jar ) {
176
+
177
+ from(sourceSets. api. java) {
178
+ include " appeng/api/**"
179
+ }
180
+
181
+ classifier = ' api'
182
+
183
+ }
184
+
185
+ artifacts {
186
+ archives devJar
187
+ archives apiJar
188
+ archives javadocJar
189
+ }
0 commit comments