isXander / isXander/YetAnotherConfigLib
YACL + Architectury + NeoForge hangs on loading screen in 1.21.4
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 155
- Forks
- 68
- PR merge metrics
- No merged PRs in 30d
Description
I have started updating my mods to 1.21.4, but I am running into the following exception when starting NeoForge:
Exception in thread "main" java.lang.module.ResolutionException: Module thedarkcolour.kotlinforforge reads more than one module named fml_loader
at java.base/java.lang.module.Resolver.resolveFail(Resolver.java:900)
at java.base/java.lang.module.Resolver.checkExportSuppliers(Resolver.java:721)
at java.base/java.lang.module.Resolver.finish(Resolver.java:380)
at java.base/java.lang.module.Configuration.<init>(Configuration.java:139)
at java.base/java.lang.module.Configuration.resolveAndBind(Configuration.java:493)
at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.4/cpw.mods.modlauncher.ModuleLayerHandler.buildLayer(ModuleLayerHandler.java:75)
at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.4/cpw.mods.modlauncher.ModuleLayerHandler.buildLayer(ModuleLayerHandler.java:87)
at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.4/cpw.mods.modlauncher.Launcher.run(Launcher.java:90)
at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.4/cpw.mods.modlauncher.Launcher.main(Launcher.java:74)
at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.4/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26)
at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.4/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23)
at cpw.mods.bootstraplauncher.BootstrapLauncher.run(BootstrapLauncher.java:210)
at cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:69)
at net.fabricmc.devlaunchinjector.Main.main(Main.java:86)
at dev.architectury.transformer.TransformerRuntime.main(TransformerRuntime.java:220)
If I comment out the following line in the root build.gradle file, everything works fine, but I obviously can't update any mods that have configs.
modImplementation "dev.isxander:yet-another-config-lib:${rootProject.yacl_version}-neoforge"
After some searching, I found a few suggestions to do things like this:
modImplementation("dev.isxander:yet-another-config-lib:${rootProject.yacl_version}-neoforge") {
exclude group: "net.neoforged.fancymodloader", module: "loader"
}
However, that didn't fix the issue. With that config, I get a bunch of ClassNotFoundExceptions related to the Kotlin for Forge mod.
I don't actually know if the fact that I am using Architectury makes a difference, but figured I would mention it just in case. Any help would be greatly appreciated!
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the YACL NeoForge dependency in the root build.gradle file and compare its resolved dependencies with the Java module-resolution exception for fml_loader. Reproduce the launch failure in the reported Architectury and NeoForge 1.21.4 setup, then verify that a configuration-enabled mod starts without module or Kotlin for Forge class-loading errors.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- build-system, game-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100