Scratch that

- Loom gets angry when a mod* dependency doesn't immediately exist so
  use a regular runtime dependency with the devlibs jar
- Strangely, the include dependency is just fine with the remap jar
- Move outgoing remapJar/jar configuration generation to JarTaskSet
- Don't actually need evaluationDependsOn
- Fix test mod id
This commit is contained in:
Jozufozu 2025-01-12 15:34:33 -08:00
parent b541c19785
commit b6124be28a
8 changed files with 35 additions and 23 deletions

View file

@ -41,6 +41,29 @@ class JarTaskSet(
} }
} }
fun outgoing(name: String) {
outgoingRemapJar("${name}Remap")
outgoingJar("${name}Dev")
}
fun outgoingRemapJar(name: String) {
val config = project.configurations.register(name) {
isCanBeConsumed = true
isCanBeResolved = false
}
project.artifacts.add(config.name, remapJar)
}
fun outgoingJar(name: String) {
val config = project.configurations.register(name) {
isCanBeConsumed = true
isCanBeResolved = false
}
project.artifacts.add(config.name, jar)
}
/** /**
* Configure the assemble task to depend on the remap tasks and javadoc jar. * Configure the assemble task to depend on the remap tasks and javadoc jar.
*/ */

View file

@ -134,7 +134,6 @@ open class PlatformExtension(val project: Project) {
override fun setValue(thisRef: Any?, property: KProperty<*>, value: Project) { override fun setValue(thisRef: Any?, property: KProperty<*>, value: Project) {
this.value = value this.value = value
thisProject.evaluationDependsOn(value.path)
} }
override fun toString(): String = override fun toString(): String =

View file

@ -56,6 +56,8 @@ platform {
jarSets { jarSets {
mainSet.publish(platform.modArtifactId) mainSet.publish(platform.modArtifactId)
mainSet.outgoing("flywheel")
create("api", api, lib).apply { create("api", api, lib).apply {
addToAssemble() addToAssemble()
publish(platform.apiArtifactId) publish(platform.apiArtifactId)
@ -68,13 +70,6 @@ jarSets {
} }
} }
val config = project.configurations.register("flywheelFabric") {
isCanBeConsumed = true
isCanBeResolved = false
}
project.artifacts.add(config.name, jarSets.mainSet.remapJar)
defaultPackageInfos { defaultPackageInfos {
sources(api, lib, backend, main) sources(api, lib, backend, main)
} }

View file

@ -1,7 +1,7 @@
{ {
"schemaVersion": 1, "schemaVersion": 1,
"id" : "${mod_id}_testmod", "id" : "${flywheel_id}_testmod",
"name": "${mod_name} Test Mod", "name" : "${flywheel_name} Test Mod",
"version": "1.0.0", "version": "1.0.0",
"environment": "*", "environment": "*",
"license": "${mod_license}", "license": "${mod_license}",

View file

@ -54,6 +54,8 @@ platform {
jarSets { jarSets {
mainSet.publish(platform.modArtifactId) mainSet.publish(platform.modArtifactId)
mainSet.outgoing("flywheel")
create("api", api, lib).apply { create("api", api, lib).apply {
addToAssemble() addToAssemble()
publish(platform.apiArtifactId) publish(platform.apiArtifactId)
@ -66,13 +68,6 @@ jarSets {
} }
} }
val config = project.configurations.register("flywheelForge") {
isCanBeConsumed = true
isCanBeResolved = false
}
project.artifacts.add(config.name, jarSets.mainSet.remapJar)
defaultPackageInfos { defaultPackageInfos {
sources(api, lib, backend, main) sources(api, lib, backend, main)
} }

View file

@ -3,6 +3,6 @@ loaderVersion = "[0,)"
license = "${mod_license}" license = "${mod_license}"
[[mods]] [[mods]]
modId = "${mod_id}_testmod" modId = "${flywheel_id}_testmod"
version = "1.0.0" version = "1.0.0"
displayName = "${mod_name} Test Mod" displayName = "${flywheel_name} Test Mod"

View file

@ -73,6 +73,6 @@ dependencies {
compileOnly(project(path = ":common", configuration = "vanillinResources")) compileOnly(project(path = ":common", configuration = "vanillinResources"))
// JiJ flywheel proper // JiJ flywheel proper
include(project(path = ":fabric", configuration = "flywheelFabric")) include(project(path = ":fabric", configuration = "flywheelRemap"))
modRuntimeOnly(project(path = ":fabric", configuration = "flywheelFabric")) runtimeOnly(project(path = ":fabric", configuration = "flywheelDev"))
} }

View file

@ -84,6 +84,6 @@ dependencies {
compileOnly(project(path = ":common", configuration = "vanillinResources")) compileOnly(project(path = ":common", configuration = "vanillinResources"))
// JiJ flywheel proper // JiJ flywheel proper
include(project(path = ":forge", configuration = "flywheelForge")) include(project(path = ":forge", configuration = "flywheelRemap"))
modRuntimeOnly(project(path = ":forge", configuration = "flywheelForge")) runtimeOnly(project(path = ":forge", configuration = "flywheelDev"))
} }