-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.gradle
111 lines (86 loc) · 3 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
plugins {
alias libs.plugins.architectury.plugin
alias libs.plugins.architectury.loom apply false
alias libs.plugins.shadow apply false
alias libs.plugins.forgix
}
architectury {
minecraft = libs.versions.minecraft.get()
}
final def architecturyLoom = libs.plugins.architectury.loom.get().pluginId
final def architecturyPlugin = libs.plugins.architectury.plugin.get().pluginId
final def shadow = libs.plugins.shadow.get().pluginId
def maven_group = libs.versions.maven.group.get()
def archives_base_name = libs.versions.archives.base.name.get()
def mod_version = "${libs.versions.mod.version.get()}+mc${libs.versions.minecraft.get()}"
subprojects {
apply {
plugin(architecturyLoom)
plugin(shadow)
plugin("maven-publish")
}
loom {
accessWidenerPath = project(":common").file("src/main/resources/uni_exporter.accesswidener")
}
dependencies {
minecraft libs.minecraft.get()
mappings loom.officialMojangMappings()
//mappings variantOf(libs.yarn.mappings) { classifier "v2" }
}
publishing {
publications {
create(project.name + "Maven", MavenPublication) {
artifactId = archives_base_name
from(components.java as SoftwareComponent)
}
}
// See https://docs.gradle.org/current/userguide/publishing_maven.html for information on how to set up publishing.
repositories {
// Add repositories to publish to here.
}
}
}
allprojects {
apply {
plugin("java")
plugin(architecturyPlugin)
plugin("maven-publish")
}
archivesBaseName = archives_base_name
version = mod_version
group = maven_group
repositories {
mavenLocal()
maven {
url rootProject.file("./maven-repo/")
}
// Add repositories to retrieve artifacts from in here.
// You should only use this when depending on other mods because
// Loom adds the essential maven repositories to download Minecraft and libraries from automatically.
// See https://docs.gradle.org/current/userguide/declaring_repositories.html
// for more information about repositories.
}
tasks.withType(JavaCompile).configureEach {
options.encoding = "UTF-8"
options.release = 17
}
java {
withSourcesJar()
}
}
forgix {
group = maven_group
mergedJarName = "${archives_base_name}-${rootProject.version}.jar"
outputDir = "build/libs/forgix"
forge(({
jarLocation = "build/libs/${archives_base_name}-${mod_version}.jar"
} as Closure<io.github.pacifistmc.forgix.plugin.ForgixMergeExtension.ForgeContainer>))
fabric(({
jarLocation = "build/libs/${archives_base_name}-${mod_version}.jar"
} as Closure<io.github.pacifistmc.forgix.plugin.ForgixMergeExtension.FabricContainer>))
}
tasks.build {
dependsOn(project(":fabric").tasks.build)
dependsOn(project(":forge").tasks.build)
dependsOn(tasks.mergeJars)
}