forked from ModFest/fireblanket
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.gradle
110 lines (93 loc) · 2.63 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
//file:noinspection GroovyAssignabilityCheck
//file:noinspection GroovyAccessibility
plugins {
id "maven-publish"
alias libs.plugins.loom
}
version = "$baseVersion+$branch"
archivesBaseName = project.slug
repositories {
maven { url "https://api.modrinth.com/maven" }
maven { url "https://maven.enginehub.org/repo/" }
maven { url "https://maven.gegy.dev/releases/" }
mavenCentral()
}
configurations {
shade
}
dependencies {
minecraft libs.mc
mappings variantOf(libs.yarn) { classifier "v2" }
modImplementation libs.fl
modImplementation libs.fapi
modImplementation libs.sodium
modImplementation libs.nettyIoUringClasses
modImplementation variantOf(libs.nettyIoUringNative) { classifier "linux-x86_64" }
modImplementation libs.zstd
modImplementation libs.worldeditCore
modImplementation libs.worldeditFabric
modImplementation "dev.gegy:player-roles-api:1.6.11"
shade(libs.nettyIoUringClasses) { transitive = false }
shade(variantOf(libs.nettyIoUringNative) { classifier "linux-x86_64" }) { transitive = false }
shade(libs.zstd) { transitive = false }
}
processResources {
final Map<String, String> meta = [
version : version,
modId : modId,
modName : modName,
modDescription: modDescription,
homepage : "https://modrinth.com/mod/${slug}",
issues : "https://github.com/${user}/${slug}/issues",
sources : "https://github.com/${user}/${slug}",
license : license,
authors : authors.split(", ").join("\",\n \""),
contributors : contributors.split(", ").join("\",\n \""),
members : "${authors}. Contributions by ${contributors}",
mc : compatibleVersions.split(", ")[0],
fl : libs.versions.fl.get(),
fapi : libs.versions.fapi.get()
]
inputs.properties(meta)
filesMatching("*.mod.json") { expand(meta) }
filesMatching("META-INF/*mods.toml") { expand(meta) }
}
tasks.withType(JavaCompile).configureEach {
it.options.encoding = "UTF-8"
it.options.release = 21
}
loom {
accessWidenerPath = file("src/main/resources/fireblanket.accesswidener")
}
sourceSets {
dummy {
compileClasspath += sourceSets.main.compileClasspath
}
main {
compileClasspath += sourceSets.dummy.output
}
}
java {
withSourcesJar()
sourceCompatibility = JavaVersion.VERSION_21
targetCompatibility = JavaVersion.VERSION_21
}
jar {
from("LICENSE") {
rename { "${it}_${archivesBaseName}" }
}
configurations.shade.resolve().each {
from(zipTree(it)) {
exclude 'META-INF/MANIFEST.MF'
exclude 'META-INF/INDEX.LIST'
exclude 'META-INF/maven/**'
}
}
}
publishing {
publications {
mavenJava(MavenPublication) {
from components.java
}
}
}