Add API module
This commit is contained in:
@@ -0,0 +1,38 @@
|
|||||||
|
version = "API-" + rootProject.versionStr
|
||||||
|
|
||||||
|
configurations {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
shadowJar {
|
||||||
|
exclude "architectury.common.json"
|
||||||
|
configurations = [project.configurations.shadowMe]
|
||||||
|
|
||||||
|
// Compression
|
||||||
|
relocate 'org.tukaani', 'distanthorizons.libraries.tukaani'
|
||||||
|
relocate 'org.apache.commons.compress', 'distanthorizons.libraries.apache.commons.compress'
|
||||||
|
|
||||||
|
// Toml & Json for config
|
||||||
|
relocate 'com.electronwill.nightconfig', 'distanthorizons.libraries.electronwill.nightconfig'
|
||||||
|
|
||||||
|
// FIXME: This is a massive library that is located in lots of different spots
|
||||||
|
relocate 'com.googlecode.json-simple', 'distanthorizons.libraries.googlecode.json-simple'
|
||||||
|
relocate 'org.json.simple', 'distanthorizons.libraries.json.simple'
|
||||||
|
|
||||||
|
// Theming
|
||||||
|
relocate 'com.formdev.flatlaf', 'distanthorizons.libraries.formdev.flatlaf'
|
||||||
|
|
||||||
|
// SVG
|
||||||
|
relocate 'com.kitfox.svg', 'distanthorizons.libraries.kitfox.svg'
|
||||||
|
|
||||||
|
classifier null
|
||||||
|
mergeServiceFiles()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Using jar.finalizedBy(shadowJar) causes issues so we do this scuffed bypass
|
||||||
|
jar.dependsOn(shadowJar)
|
||||||
|
jar.enabled(false)
|
||||||
+30
-8
@@ -130,6 +130,9 @@ forgix {
|
|||||||
fabric {
|
fabric {
|
||||||
jarLocation = "build/libs/DistantHorizons-${rootProject.versionStr}.jar"
|
jarLocation = "build/libs/DistantHorizons-${rootProject.versionStr}.jar"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
removeDuplicate "com.seibel.lod.core"
|
||||||
|
removeDuplicate "com.seibel.lod.api"
|
||||||
}
|
}
|
||||||
|
|
||||||
architectury {
|
architectury {
|
||||||
@@ -142,17 +145,24 @@ subprojects { p ->
|
|||||||
apply plugin: "org.spongepowered.gradle.vanilla" // Provides minecraft libraries
|
apply plugin: "org.spongepowered.gradle.vanilla" // Provides minecraft libraries
|
||||||
apply plugin: "com.github.johnrengelman.shadow"
|
apply plugin: "com.github.johnrengelman.shadow"
|
||||||
} else {
|
} else {
|
||||||
apply plugin: "dev.architectury.loom"
|
|
||||||
apply plugin: "com.github.johnrengelman.shadow"
|
apply plugin: "com.github.johnrengelman.shadow"
|
||||||
|
if (p != project(":api")) { // Don't add loom to the api project
|
||||||
|
apply plugin: "dev.architectury.loom"
|
||||||
|
|
||||||
loom {
|
loom {
|
||||||
silentMojangMappingsLicense()
|
silentMojangMappingsLicense()
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
apply plugin: "java" // Apply the java plugin early to the api project
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
configurations {
|
configurations {
|
||||||
shadowMe
|
shadowMe
|
||||||
implementation.extendsFrom shadowMe
|
implementation.extendsFrom shadowMe
|
||||||
|
|
||||||
|
customModule
|
||||||
|
implementation.extendsFrom customModule
|
||||||
}
|
}
|
||||||
|
|
||||||
if (p == project(":core")) {
|
if (p == project(":core")) {
|
||||||
@@ -169,7 +179,7 @@ subprojects { p ->
|
|||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
// Sets up minecraft for projects other than core
|
// Sets up minecraft for projects other than core
|
||||||
if (p != project(":core")) {
|
if (p != project(":core") && p != project(":api")) {
|
||||||
minecraft "com.mojang:minecraft:${rootProject.minecraft_version}"
|
minecraft "com.mojang:minecraft:${rootProject.minecraft_version}"
|
||||||
// The following line declares the mojmap mappings & parchment mappings
|
// The following line declares the mojmap mappings & parchment mappings
|
||||||
mappings loom.layered() {
|
mappings loom.layered() {
|
||||||
@@ -209,9 +219,19 @@ subprojects { p ->
|
|||||||
shadowMe "com.formdev:flatlaf-extras:${rootProject.flatlaf_version}"
|
shadowMe "com.formdev:flatlaf-extras:${rootProject.flatlaf_version}"
|
||||||
shadowMe "com.formdev:svgSalamander:${rootProject.svgSalamander_version}"
|
shadowMe "com.formdev:svgSalamander:${rootProject.svgSalamander_version}"
|
||||||
|
|
||||||
// Add the core project as a dependency
|
// Add the core as a dependency
|
||||||
if (p != project(":core")) {
|
if (p != project(":core")) {
|
||||||
shadowMe(project(":core")) {
|
customModule(project(":core")) {
|
||||||
|
// Remove Junit test libraries
|
||||||
|
exclude group: "org.junit.jupiter", module: "junit-jupiter"
|
||||||
|
exclude group: "org.junit.jupiter", module: "junit-jupiter-engine"
|
||||||
|
exclude group: "junit", module: "junit"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Add the api as a dependency
|
||||||
|
if (p != project(":api") && p != project(":core")) {
|
||||||
|
customModule(project(":api")) {
|
||||||
// Remove Junit test libraries
|
// Remove Junit test libraries
|
||||||
exclude group: "org.junit.jupiter", module: "junit-jupiter"
|
exclude group: "org.junit.jupiter", module: "junit-jupiter"
|
||||||
exclude group: "org.junit.jupiter", module: "junit-jupiter-engine"
|
exclude group: "org.junit.jupiter", module: "junit-jupiter-engine"
|
||||||
@@ -245,8 +265,10 @@ subprojects { p ->
|
|||||||
// }
|
// }
|
||||||
|
|
||||||
// Run mergeJars when running build
|
// Run mergeJars when running build
|
||||||
build.finalizedBy(mergeJars)
|
if (p != project(":api") && p != project(":api")) {
|
||||||
assemble.finalizedBy(mergeJars)
|
build.finalizedBy(mergeJars)
|
||||||
|
assemble.finalizedBy(mergeJars)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
allprojects { p ->
|
allprojects { p ->
|
||||||
|
|||||||
+1
-1
@@ -96,7 +96,7 @@ dependencies {
|
|||||||
shadowJar {
|
shadowJar {
|
||||||
exclude "architectury.common.json"
|
exclude "architectury.common.json"
|
||||||
|
|
||||||
configurations = [project.configurations.shadowCommon, project.configurations.shadowMe]
|
configurations = [project.configurations.shadowCommon, project.configurations.shadowMe, project.configurations.customModule]
|
||||||
|
|
||||||
// Compression
|
// Compression
|
||||||
relocate 'org.tukaani', 'distanthorizons.libraries.tukaani'
|
relocate 'org.tukaani', 'distanthorizons.libraries.tukaani'
|
||||||
|
|||||||
+1
-1
@@ -66,7 +66,7 @@ processResources {
|
|||||||
shadowJar {
|
shadowJar {
|
||||||
exclude "architectury.common.json"
|
exclude "architectury.common.json"
|
||||||
|
|
||||||
configurations = [project.configurations.shadowCommon, project.configurations.shadowMe]
|
configurations = [project.configurations.shadowCommon, project.configurations.shadowMe, project.configurations.customModule]
|
||||||
|
|
||||||
// Compression
|
// Compression
|
||||||
relocate 'org.tukaani', 'distanthorizons.libraries.tukaani'
|
relocate 'org.tukaani', 'distanthorizons.libraries.tukaani'
|
||||||
|
|||||||
@@ -12,5 +12,6 @@ include("common")
|
|||||||
include("fabric")
|
include("fabric")
|
||||||
include("forge")
|
include("forge")
|
||||||
include("core")
|
include("core")
|
||||||
|
include("api")
|
||||||
|
|
||||||
rootProject.name = "DistantHorizons"
|
rootProject.name = "DistantHorizons"
|
||||||
|
|||||||
Reference in New Issue
Block a user