forked from Cazsius/DeathQuotes
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.gradle
63 lines (57 loc) · 3.01 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
plugins {
id "org.jetbrains.gradle.plugin.idea-ext" version "1.1.7"
}
println "Java: ${System.getProperty 'java.version'}, JVM: ${System.getProperty 'java.vm.version'} (${System.getProperty 'java.vendor'}), Arch: ${System.getProperty 'os.arch'}"
subprojects {
version = "${minecraft_version}-${mod_version}"
group = mod_group_id
tasks.withType(JavaCompile).configureEach {
options.encoding = 'UTF-8' // Use the UTF-8 charset for Java compilation
options.release.set(JavaLanguageVersion.of(minecraft_java_build_version).asInt())
sourceCompatibility = targetCompatibility = minecraft_java_build_version // Need this here so eclipse task generates correctly.
}
def resourceTargets = ['META-INF/mods.toml', 'pack.mcmeta', 'fabric.mod.json', 'META-INF/neoforge.mods.toml']
def replaceProperties = [
minecraft_version : minecraft_version,
minecraft_java_build_version : minecraft_java_build_version,
forge_minecraft_version_range : forge_minecraft_version_range,
forge_version : forge_version,
forge_version_range : forge_version_range,
forge_loader_version_range : forge_loader_version_range,
neoforge_minecraft_version_range: neoforge_minecraft_version_range,
neoforge_version : neoforge_version,
neoforge_version_range : neoforge_version_range,
neoforge_loader_version_range : neoforge_loader_version_range,
fabric_loader_version : fabric_loader_version,
fabric_minecraft_versions : fabric_minecraft_versions,
fabric_api_version : fabric_api_version,
mod_id : mod_id,
mod_name : mod_name,
mod_license : mod_license,
mod_version : mod_version,
mod_authors : mod_authors,
mod_description : mod_description,
mod_curseforge_link : mod_curseforge_link,
mod_github_link : mod_github_link
]
tasks.withType(ProcessResources).configureEach {
inputs.properties replaceProperties
// replaceProperties.put 'project', project
filesMatching(resourceTargets) {
expand replaceProperties
}
}
tasks.withType(Jar).configureEach {
manifest {
attributes([
"Specification-Title" : mod_id,
"Specification-Vendor" : mod_authors,
"Specification-Version" : mod_version,
"Implementation-Title" : project.name,
"Implementation-Version" : project.jar.archiveVersion,
"Implementation-Vendor" : mod_authors,
"Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ")
])
}
}
}