Skip to content

Commit 8e45f0e

Browse files
committed
Fix crash in dev due to modern dependency change.
1 parent 039dea4 commit 8e45f0e

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed

loader/src/main/java/com/fox2code/foxloader/launcher/FoxClassLoader.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ protected Class<?> loadClass(String name, boolean resolve) throws ClassNotFoundE
109109
} else {
110110
c = findLoadedClass(name);
111111
if (c == null) {
112-
URL resource = findResource(name.replace('.', '/') + ".class");
112+
URL resource = this.findResource(name.replace('.', '/') + ".class");
113113
if (resource != null) {
114114
synchronized (getClassLoadingLock(name)) {
115115
c = findClassImpl(name, resource);
@@ -119,7 +119,7 @@ protected Class<?> loadClass(String name, boolean resolve) throws ClassNotFoundE
119119
c = super.loadClass(name, false);
120120
} catch (SecurityException securityException) {
121121
throw new ClassNotFoundException(name, securityException);
122-
} catch (ClassNotFoundException e) {
122+
} catch (ClassNotFoundException | UnsupportedClassVersionError e) {
123123
synchronized (getClassLoadingLock(name)) {
124124
c = findClassImpl(name, null);
125125
}
@@ -506,11 +506,14 @@ public static boolean isSpecialClassName(String cls) {
506506
cls.startsWith("com.unascribed.ears.") ||
507507
cls.startsWith("com.llamalad7.mixinextras.") ||
508508
cls.startsWith("com.bawnorton.mixinsquared.") ||
509+
cls.startsWith("com.moulberry.mixinconstraints.") ||
509510
cls.startsWith("fr.catcore.cursedmixinextensions.") ||
510511
cls.startsWith("org.spongepowered.") ||
511512
cls.startsWith("org.objectweb.asm.") ||
512513
cls.startsWith("com.fox2code.rebuild.") ||
513514
cls.startsWith("com.fox2code.foxevents.") ||
515+
// We also need to add Java21+ dependencies here to prevent crashes.
516+
cls.startsWith("blue.endless.jankson.") ||
514517
// Cover an edge case of loading spark in a development environment
515518
cls.startsWith("me.lucko.spark.") ||
516519
// Special case for JVMDowngrader

loader/src/main/java/com/fox2code/foxloader/launcher/GameDependencyImpl.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,10 +46,12 @@ public boolean isDevelopingMod() {
4646
return FoxLauncher.DEV_MODE;
4747
}
4848

49+
@Override
4950
public boolean hasClass(String cls) {
5051
return FoxLauncher.getFoxClassLoader().hasClass(cls);
5152
}
5253

54+
@Override
5355
public void addDependency(File file, DependencyHelper.Dependency dependency, boolean isMinecraft) throws IOException {
5456
FoxLauncher.filesToLoad.remove(file);
5557
if (isMinecraft) {
@@ -67,14 +69,17 @@ public void checkAddDependency(File file, DependencyHelper.Dependency dependency
6769
}
6870
}
6971

72+
@Override
7073
public boolean isClassLoaderInitialized() {
7174
return FoxLauncher.getFoxClassLoader() != null;
7275
}
7376

77+
@Override
7478
public void printStackTrace(Throwable throwable) {
7579
FoxLauncher.printEarlyStackTrace(throwable);
7680
}
7781

82+
@Override
7883
public File checkMCLibraryRoot(File mcLibraries) {
7984
String mcLibrariesPath;
8085
switch (Platform.getPlatform()) {

0 commit comments

Comments
 (0)