Allow multiple copies of a class on the CP and pick the JAR containing the first.
This allows unusual setups where through cross-project or cross-source-set dependencies, IDEs put MC on the classpath multiple times.
- [x] Publish PR to GitHub Packages
Last commit published: 5e864b1e2d7c7463e105fb621621c18d1d17b296.
PR Publishing
The artifacts published by this PR:
- :package:
net.neoforged.fancymodloader:earlydisplay:4.0.12-pr-169-allow-multiple-copies - :package:
net.neoforged.fancymodloader:junit-fml:4.0.12-pr-169-allow-multiple-copies - :package:
net.neoforged.fancymodloader:loader:4.0.12-pr-169-allow-multiple-copies
Repository Declaration
In order to use the artifacts published by the PR, add the following repository to your buildscript:
repositories {
maven {
name 'Maven for PR #169' // https://github.com/neoforged/FancyModLoader/pull/169
url 'https://prmaven.neoforged.net/FancyModLoader/pr169'
content {
includeModule('net.neoforged.fancymodloader', 'earlydisplay')
includeModule('net.neoforged.fancymodloader', 'junit-fml')
includeModule('net.neoforged.fancymodloader', 'loader')
}
}
}
I'd prefer the MC jar override to be manual via a system prop. Is that unreasonable? That would better match NG's logic.
As I already told you on Discord, no system properties: It's a pain in the ass to actually set those for JUnit runs
I'd prefer the MC jar override to be manual via a system prop. Is that unreasonable? That would better match NG's logic.
Yes and no.
This follows NGs logic much better, since NGs logic relies on classpath ordering specifications as defined by Oracle for the JVM --classpath parameter.
The addition of NGs removal and subsequent further modification of the classpath in general is caused by the fact that with duplicates it won't start at all.
@Technici4n What is the state on this? We still need this
In case this got lost: my preference is still to pass the desired MC jar and client-extra as a system prop or something like that.
@shartte, this pull request has conflicts, please resolve them for this PR to move forward.