diff --git a/framework/inject-primitive/build.gradle.kts b/framework/inject-primitive/build.gradle.kts index 89f9ca718..d8e7f0bbd 100644 --- a/framework/inject-primitive/build.gradle.kts +++ b/framework/inject-primitive/build.gradle.kts @@ -24,7 +24,5 @@ plugins { group = "net.flintmc" dependencies { - - api("com.google.inject", "guice", "4.2.0") - + api("ca.stellardrift.guice-backport", "guice", "5.0.1") } diff --git a/framework/stereotype/build.gradle.kts b/framework/stereotype/build.gradle.kts index 447b827b7..4b944363b 100644 --- a/framework/stereotype/build.gradle.kts +++ b/framework/stereotype/build.gradle.kts @@ -35,9 +35,8 @@ dependencies { api("net.flintmc.installer", "launcher-plugin", "1.1.12") api("com.google.guava", "guava", "21.0") - api("com.google.inject", "guice", "4.2.0") + api("ca.stellardrift.guice-backport", "guice", "5.0.1") api("org.apache.commons", "commons-lang3", "3.9") api("org.codehaus.groovy", "groovy-all", "3.0.2") api("org.javassist", "javassist", "3.27.0-GA") - } diff --git a/transform/minecraft-obfuscator/src/main/java/net/flintmc/transform/minecraft/obfuscate/MinecraftInstructionObfuscator.java b/transform/minecraft-obfuscator/src/main/java/net/flintmc/transform/minecraft/obfuscate/MinecraftInstructionObfuscator.java index c2402d4e4..89d747c57 100644 --- a/transform/minecraft-obfuscator/src/main/java/net/flintmc/transform/minecraft/obfuscate/MinecraftInstructionObfuscator.java +++ b/transform/minecraft-obfuscator/src/main/java/net/flintmc/transform/minecraft/obfuscate/MinecraftInstructionObfuscator.java @@ -22,14 +22,15 @@ import com.google.inject.Inject; import com.google.inject.Singleton; import com.google.inject.name.Named; +import java.io.IOException; import net.flintmc.framework.packages.PackageClassLoader; import net.flintmc.framework.stereotype.service.CacheIdRetriever; +import net.flintmc.launcher.classloading.ClassTransformException; import net.flintmc.launcher.classloading.RootClassLoader; import net.flintmc.launcher.classloading.common.ClassInformation; import net.flintmc.launcher.classloading.common.CommonClassLoader; import net.flintmc.launcher.classloading.common.CommonClassLoaderHelper; import net.flintmc.transform.asm.ASMUtils; -import net.flintmc.launcher.classloading.ClassTransformException; import net.flintmc.transform.launchplugin.LateInjectedTransformer; import net.flintmc.transform.minecraft.MinecraftTransformer; import net.flintmc.transform.minecraft.obfuscate.remap.MinecraftClassRemapper; @@ -39,15 +40,13 @@ import org.objectweb.asm.ClassWriter; import org.objectweb.asm.commons.ClassRemapper; import org.objectweb.asm.tree.ClassNode; -import java.io.IOException; /** * Deobfuscates all minecraft classes for which mappings are provided */ @Singleton @MinecraftTransformer(priority = Integer.MIN_VALUE) -public class MinecraftInstructionObfuscator implements LateInjectedTransformer, - CacheIdRetriever { +public class MinecraftInstructionObfuscator implements LateInjectedTransformer, CacheIdRetriever { private final MinecraftClassRemapper minecraftClassRemapper; private final RootClassLoader rootClassLoader; @@ -59,7 +58,8 @@ public class MinecraftInstructionObfuscator implements LateInjectedTransformer, @Inject private MinecraftInstructionObfuscator( MinecraftClassRemapper minecraftClassRemapper, - @Named("obfuscated") boolean obfuscated, ClassCache classCache) { + @Named("obfuscated") boolean obfuscated, + ClassCache classCache) { this.minecraftClassRemapper = minecraftClassRemapper; this.classCache = classCache; this.obfuscated = obfuscated; @@ -70,7 +70,7 @@ private MinecraftInstructionObfuscator( @Override public byte[] transform(String className, CommonClassLoader classLoader, byte[] classData) throws ClassTransformException { - if (!obfuscated) { + if (!this.obfuscated) { return classData; } if (!className.startsWith("net.flintmc.") @@ -79,7 +79,7 @@ public byte[] transform(String className, CommonClassLoader classLoader, return classData; } - final Ref exception = new Ref<>(); + Ref exception = new Ref<>(); byte[] bytecode = this.classCache .getOrTransformAndWriteClass(className, this.cacheId, classData, @@ -101,7 +101,7 @@ public byte[] transform(String className, CommonClassLoader classLoader, ClassWriter classWriter = new ClassWriter( ClassWriter.COMPUTE_MAXS); ClassVisitor classRemapper = new ClassRemapper(classWriter, - minecraftClassRemapper); + this.minecraftClassRemapper); classNode.accept(classRemapper); return classWriter.toByteArray(); }); diff --git a/transform/minecraft-obfuscator/src/main/java/net/flintmc/transform/minecraft/obfuscate/remap/MinecraftClassRemapper.java b/transform/minecraft-obfuscator/src/main/java/net/flintmc/transform/minecraft/obfuscate/remap/MinecraftClassRemapper.java index f02016785..d5433218a 100644 --- a/transform/minecraft-obfuscator/src/main/java/net/flintmc/transform/minecraft/obfuscate/remap/MinecraftClassRemapper.java +++ b/transform/minecraft-obfuscator/src/main/java/net/flintmc/transform/minecraft/obfuscate/remap/MinecraftClassRemapper.java @@ -21,6 +21,10 @@ import com.google.inject.Inject; import com.google.inject.Singleton; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; import javassist.ClassPool; import javassist.CtClass; import javassist.NotFoundException; @@ -37,10 +41,6 @@ import org.objectweb.asm.Type; import org.objectweb.asm.commons.SimpleRemapper; import org.objectweb.asm.tree.ClassNode; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; /** * Loads and provides mappings for a {@link org.objectweb.asm.commons.ClassRemapper}, @@ -54,16 +54,18 @@ public class MinecraftClassRemapper extends SimpleRemapper { private Handle lastHandle; @Inject - private MinecraftClassRemapper(ClassPool pool, + private MinecraftClassRemapper( + ClassPool pool, ClassMappingProvider classMappingProvider) { super(collectMappings(pool, classMappingProvider)); this.classMappingProvider = classMappingProvider; - assert this.getClass().getClassLoader() instanceof RootClassLoader; - this.rootClassLoader = (RootClassLoader) getClass().getClassLoader(); + assert super.getClass().getClassLoader() instanceof RootClassLoader; + this.rootClassLoader = (RootClassLoader) super.getClass().getClassLoader(); this.rootClassLoader.excludeFromModification("org.objectweb.asm."); } - private static Map collectMappings(ClassPool pool, + private static Map collectMappings( + ClassPool pool, ClassMappingProvider classMappingProvider) { Map mappings = new HashMap<>(); diff --git a/util/commons/build.gradle.kts b/util/commons/build.gradle.kts index fc60a11ad..ea209ccd3 100644 --- a/util/commons/build.gradle.kts +++ b/util/commons/build.gradle.kts @@ -25,7 +25,7 @@ group = "net.flintmc" dependencies { api("org.joml", "joml", "1.9.25") - api("com.google.inject", "guice", "4.2.0") + api("ca.stellardrift.guice-backport", "guice", "5.0.1") implementation("com.google.auto.service", "auto-service", "1.0-rc6") } \ No newline at end of file diff --git a/util/mapping/src/main/java/net/flintmc/util/mappings/MethodMapping.java b/util/mapping/src/main/java/net/flintmc/util/mappings/MethodMapping.java index 10fe5247f..f4f079cc4 100644 --- a/util/mapping/src/main/java/net/flintmc/util/mappings/MethodMapping.java +++ b/util/mapping/src/main/java/net/flintmc/util/mappings/MethodMapping.java @@ -19,7 +19,6 @@ package net.flintmc.util.mappings; -import com.google.inject.internal.cglib.core.$RejectModifierPredicate; import javassist.ClassPool; import javassist.CtClass; import javassist.CtMethod; diff --git a/util/unit-testing/build.gradle.kts b/util/unit-testing/build.gradle.kts index 5d9dc1d09..c5e200ff8 100644 --- a/util/unit-testing/build.gradle.kts +++ b/util/unit-testing/build.gradle.kts @@ -27,6 +27,6 @@ dependencies { api(platform("org.junit:junit-bom:5.7.0")) api("org.junit.jupiter", "junit-jupiter", "5.7.0") api("org.junit.jupiter", "junit-jupiter-api", "5.7.0") - api("com.google.inject", "guice", "4.2.0") + api("ca.stellardrift.guice-backport", "guice", "5.0.1") api("org.mockito:mockito-core:3.7.7") }