UE5 Plugin Building Errors (Invalid JSON string) SOLUTION

I am documenting the solution that took me two days to “come to Jesus”… after a good sleep and a morning shower I finally was able to compile the plugin for Unreal Engine 5.0

The compiling error message was clear:
"‘0x0A’ is invalid within a JSON string. The string should be correctly escaped. LineNumber: 11"

But since I am not good at JSON, I wasn’t even sure what that was.
What really threw me off is that UE 4.27/4.26/4.25 wasn’t having a problem with the .uplugin file, so immediately I thought that the problem was a missing SDK or a missing “something”.

Like I said, after walking away from the problem and coming back with a fresh head I looked into the error and started to clean the .uplugin to the basics.

Re thinking the error, a (0x0A) ASCII character is a New Line (invisible to most compilers default view).

After stripping all the file and coping a random UE5 plugin .uplugin file and just changing without adding too much stuff, I was finally able to compile without errors!.

Moral of the story … take a shower.

Suggestion for UE: Probably a pre-reformat tool to eliminate these JSON illegal characters of the .uplugin content?

Either way. I am going to paste some keywords so people can find the solution in the future.

Cheers!

KEWORDS (never mind the mess bellow, this is just to help poor souls to find the solution).

ERROR: EpicGames.Core.JsonParseException: Unable to parse ,
Problem Solution to "is invalid within a JSON string. The string should be correctly escaped. LineNumber:, compiling, UE5, Unreal Engine 5, RunUAT.bat BuildPlugin -plugin=, compiler error, not compiling, JSON error, JSON, Unreal Engine 5 compiling error, Unreal Engine 5 Plugin compiling error.
at EpicGames.Core.JsonObject.Read(FileReference File),
at UnrealBuildTool.PluginDescriptor.FromFile(FileReference FileName) in d:\build++UE5\Sync\Engine\Source\Programs\UnrealBuildTool\System\PluginDescriptor.cs:line 318,
at UnrealBuildTool.PluginDescriptor.FromFile(FileReference FileName) in d:\build++UE5\Sync\Engine\Source\Programs\UnrealBuildTool\System\PluginDescriptor.cs:line 318,
at EpicGames.Core.JsonObject.Read(FileReference File) in d:\build++UE5\Sync\Engine\Source\Programs\Shared\EpicGames.Core\JsonObject.cs:line 101
at UnrealBuildTool.PluginDescriptor.FromFile(FileReference FileName) in d:\build++UE5\Sync\Engine\Source\Programs\UnrealBuildTool\System\PluginDescriptor.cs:line 318
at BuildPlugin.ExecuteBuild() in d:\build++UE5\Sync\Engine\Source\Programs\AutomationTool\Scripts\BuildPluginCommand.Automation.cs:line 95
at AutomationTool.BuildCommand.Execute() in d:\build++UE5\Sync\Engine\Source\Programs\AutomationTool\AutomationUtils\BuildCommand.cs:line 323
at AutomationTool.Automation.Execute(List1 CommandsToExecute, Dictionary2 Commands) in d:\build++UE5\Sync\Engine\Source\Programs\AutomationTool\AutomationUtils\Automation.cs:line 541
at AutomationTool.Automation.Process(String[] Arguments, StartupTraceListener StartupListener) in d:\build++UE5\Sync\Engine\Source\Programs\AutomationTool\AutomationUtils\Automation.cs:line 498
at AutomationTool.Program.MainProc(String[] Arguments, StartupTraceListener StartupListener) in d:\build++UE5\Sync\Engine\Source\Programs\AutomationTool\Program.cs:line 176
at AutomationTool.Program.<>c__DisplayClass1_0.b__2() in d:\build++UE5\Sync\Engine\Source\Programs\AutomationTool\Program.cs:line 88
at AutomationTool.InternalUtils.RunSingleInstance(String[] Arguments, Func`1 Main) in d:\build++UE5\Sync\Engine\Source\Programs\AutomationTool\AutomationUtils\Utils.cs:line 752
at AutomationTool.Program.Main(String[] Arguments) in d:\build++UE5\Sync\Engine\Source\Programs\AutomationTool\Program.cs:line 88

2 Likes