Posted October 3, 201411 yr Alright, so I've been going at this for hours now. I can't seem to get FML to parse my mcmod.info file. Here it is: http://pastebin.com/jjSdUxqd I've validated it almost 10 times now, with varying arrangements of spacing, brackets, etc. Every single time, I get this error, or something like it: [19:30:37] [Client thread/ERROR] [FML]: The mcmod.info file in PlasmaCraft-0.3.5.jar cannot be parsed as valid JSON. It will be ignored com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 5 at com.google.gson.JsonParser.parse(JsonParser.java:65) ~[JsonParser.class:?] at cpw.mods.fml.common.MetadataCollection.from(MetadataCollection.java:55) [MetadataCollection.class:?] at cpw.mods.fml.common.discovery.JarDiscoverer.discover(JarDiscoverer.java:53) [JarDiscoverer.class:?] at cpw.mods.fml.common.discovery.ContainerType.findMods(ContainerType.java:42) [ContainerType.class:?] at cpw.mods.fml.common.discovery.ModCandidate.explore(ModCandidate.java:71) [ModCandidate.class:?] at cpw.mods.fml.common.discovery.ModDiscoverer.identifyMods(ModDiscoverer.java:127) [ModDiscoverer.class:?] at cpw.mods.fml.common.Loader.identifyMods(Loader.java:347) [Loader.class:?] at cpw.mods.fml.common.Loader.loadMods(Loader.java:468) [Loader.class:?] at cpw.mods.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:204) [FMLClientHandler.class:?] at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:480) [bao.class:?] at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:867) [bao.class:?] at net.minecraft.client.main.Main.main(SourceFile:148) [Main.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_67] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_67] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_67] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.7.0_67] at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.11.jar:?] at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.11.jar:?] Caused by: com.google.gson.stream.MalformedJsonException: Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 5 at com.google.gson.stream.JsonReader.syntaxError(JsonReader.java:1505) ~[JsonReader.class:?] at com.google.gson.stream.JsonReader.checkLenient(JsonReader.java:1386) ~[JsonReader.class:?] at com.google.gson.stream.JsonReader.doPeek(JsonReader.java:531) ~[JsonReader.class:?] at com.google.gson.stream.JsonReader.peek(JsonReader.java:414) ~[JsonReader.class:?] at com.google.gson.JsonParser.parse(JsonParser.java:60) ~[JsonParser.class:?] ... 17 more What the heck is going on? I've remade the file, making sure the right encoding is being used, and rewrote the file from scratch at the same time, and still no difference.
October 3, 201411 yr That's strange JSON validator likes it no problem http://jsonlint.com/ Mine starts like this and it works fine. [{ "modid": "speedytoolsmod", "name": "Build Faster Mod", .. etc .. }] Some strange problem with carriage return / line feed perhaps? Line 1 column 5 doesn't seem to exist. Perhaps try pasting it into notepad and saving again to make sure it's just text. If it were me, I would try set a breakpoint at cpw.mods.fml.common.MetadataCollection.from(MetadataCollection.java:55) [MetadataCollection.class:?] and then trace in using the debugger to see why the JsonReader thinks it's malformed. -TGG
October 3, 201411 yr Also try using a simple working mcmod.info file from some other mod (i.e. one that doesn't have dependencies). If it still crashes... well, we'll cross that bridge if we come to it. I like to make mods, just like you. Here's one worth checking out
October 3, 201411 yr Author I just don't understand it either. I went ahead and removed all of the newlines and extraneous spacing (so it was all on one line and the only spaces were in the string values), and it STILL gave me the error. I even did the extended searching in Notepad++ to find and remove any individual return or newline characters, and there weren't any, and STILL that line 1 column 5. I'm so confused...
October 3, 201411 yr https://gist.githubusercontent.com/MultiMote/96434272a734fe5ac8e1/raw/78bbfd362a3715dab0801088b8d1f88d00a4e388/mcmod.info
October 3, 201411 yr Author Guess what? I found out what it was. GSON apparently is incapable of reading UTF-8. Here, I thought I was doing what I was supposed to by making sure the .info file was being saved as UTF-8, and apparently those first three identifying bytes of the file were what were causing all the ruckus... I found this out by pulling the mcmod.info file out of ForgeEssentials and opened it up with Notepad, and lo and behold the newlines weren't working there, like they usually don't, but still were in Notepad++. So I edited that file without changing encoding and it works fine now.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.