Closed
Description
As the title says, loading a mod jar which has null characters in the file name will make Minecraft crash when using this (Latest Forge 1.16.1), the normal Minecraft loader does not do this, nor does other loaders like Fabric.
The main error is: Error: java.nio.file.InvalidPathException: Path: nul character not allowed:
followed by the path itself.
The whole stacktrace:
java.nio.file.InvalidPathException: Path: nul character not allowed: <null character>/<the path to my class>
at com.sun.nio.zipfs.ZipPath.normalize(ZipPath.java:448)
at com.sun.nio.zipfs.ZipPath.<init>(ZipPath.java:76)
at com.sun.nio.zipfs.ZipPath.<init>(ZipPath.java:67)
at com.sun.nio.zipfs.ZipFileSystem.getPath(ZipFileSystem.java:186)
at com.sun.nio.zipfs.ZipFileSystem.getPath(ZipFileSystem.java:80)
at net.minecraftforge.fml.loading.moddiscovery.ModDiscoverer$MinecraftLocator.findPathJar(ModDiscoverer.java:200)
at net.minecraftforge.fml.loading.moddiscovery.ModDiscoverer$MinecraftLocator.findPath(ModDiscoverer.java:187)
at net.minecraftforge.fml.loading.moddiscovery.ModFile.findResource(ModFile.java:181)
at net.minecraftforge.fml.loading.LoadingModList.findURLForResource(LoadingModList.java:126)
at net.minecraftforge.fml.loading.FMLCommonLaunchHandler.lambda$getClassLoaderLocatorFunction$5(FMLCommonLaunchHandler.java:132)
at net.minecraftforge.fml.loading.FMLCommonLaunchHandler$$Lambda$409/664839586.apply(Unknown Source)
at cpw.mods.modlauncher.TransformationServicesHandler.lambda$alternate$1(TransformationServicesHandler.java:52)
at cpw.mods.modlauncher.TransformationServicesHandler$$Lambda$414/651235118.apply(Unknown Source)
at cpw.mods.modlauncher.TransformationServicesHandler.lambda$alternate$1(TransformationServicesHandler.java:52)
at cpw.mods.modlauncher.TransformationServicesHandler$$Lambda$414/651235118.apply(Unknown Source)
at cpw.mods.modlauncher.TransformingClassLoader.lambda$alternate$10(TransformingClassLoader.java:85)
at cpw.mods.modlauncher.TransformingClassLoader$$Lambda$420/295055909.apply(Unknown Source)
at cpw.mods.modlauncher.TransformingClassLoader$DelegatedClassLoader.findClass(TransformingClassLoader.java:218)
at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:126)
at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:96)
at java.lang.ClassLoader.loadClass(ClassLoader.java:411)
at java.net.FactoryURLClassLoader.loadClass(URLClassLoader.java:814)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at <my class calling a new MyClass()>```
The null character is a common in obfuscation programs, and forge with modlauncher cannot load it.
Metadata
Metadata
Assignees
Labels
No labels