-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathbuild.gradle
111 lines (94 loc) · 2.35 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
plugins {
id 'eclipse'
id 'idea'
id 'java-library'
id 'net.neoforged.moddev' version '1.0.0'
id 'io.github.goooler.shadow' version '8.1.8'
}
group = 'org.jedi'
version = project.mod_version
base {
archivesName = mod_id
}
java.toolchain.languageVersion = JavaLanguageVersion.of(21)
println('Java: ' + System.getProperty('java.version') + ' JVM: ' + System.getProperty('java.vm.version') + '(' + System.getProperty('java.vendor') + ') Arch: ' + System.getProperty('os.arch'))
neoForge {
version = project.neo_version
parchment {
minecraftVersion = project.minecraft_version
mappingsVersion = project.parchment_version
}
runs {
configureEach {
logLevel = org.slf4j.event.Level.INFO
gameDirectory = project.file('run')
}
client {
client()
}
server {
server()
}
}
mods {
"${mod_id}" {
sourceSet sourceSets.main
}
}
}
configurations {
library
implementation.extendsFrom library
}
repositories {
mavenCentral()
}
dependencies {
additionalRuntimeClasspath(library("org.javacord:javacord:${javacord_version}")) {
exclude group: 'org.jetbrains'
}
additionalRuntimeClasspath(library('org.apache.logging.log4j:log4j-api:2.17.2'))
}
jar {
archiveClassifier = 'slim'
}
shadowJar {
configurations = [project.configurations.library]
archiveClassifier = ''
[
'com.codahale',
'com.fasterxml',
'com.neovisionaries',
'io.vavr',
'javax.annotation',
'kotlin',
'okhttp3',
'okio',
'org.apache.logging.log4j',
'org.bouncycastle',
'org.javacord',
].forEach {
relocate it, "shadowjedi.$it"
}
mergeServiceFiles()
}
assemble.dependsOn(shadowJar)
tasks.withType(ProcessResources).configureEach {
var replaceProperties = [
mod_id : mod_id,
mod_version : mod_version,
]
inputs.properties replaceProperties
filesMatching(['META-INF/neoforge.mods.toml']) {
expand replaceProperties
}
}
tasks.withType(JavaCompile).configureEach {
options.encoding = 'UTF-8'
}
idea {
module {
downloadSources = true
downloadJavadoc = true
}
}