Recently I had a big file corruption issue with my project.
I was in 2023.2 and upgrading to Unity 6.12 solved most of my issues.
I don’t know if it’s related to my previous issue or if it’s a bug with unity 6.12 but when I try to build my addressable assets I get theses errors:
The type initializer for 'UnityEditor.Build.Pipeline.Utilities.ScriptableBuildPipeline' threw an exception.
UnityEditor.GenericMenu:CatchMenu (object,string[],int)
The type initializer for 'UnityEditor.Build.Pipeline.Utilities.ScriptableBuildPipeline' threw an exception.
UnityEditor.GenericMenu:CatchMenu (object,string[],int)
Addressable content build failure (duration : 0:00:00)
UnityEditor.GenericMenu:CatchMenu (object,string[],int)
The errors aren’t very explicit so I did some digging.
Here’s the stack trace for the first error:
at UnityEditor.Build.Pipeline.Utilities.HashingMethods.GetHashAlgorithm () [0x00001] in .\Library\PackageCache\com.unity.scriptablebuildpipeline\Editor\Utilities\HashingMethods.cs:291
at UnityEditor.Build.Pipeline.Utilities.HashingMethods.Calculate (System.Object[] objects) [0x00011] in .\Library\PackageCache\com.unity.scriptablebuildpipeline\Editor\Utilities\HashingMethods.cs:388
at UnityEditor.AddressableAssets.Build.DataBuilders.BuildScriptPackedMode.CalculateGroupHash (UnityEditor.AddressableAssets.Settings.GroupSchemas.BundledAssetGroupSchema+BundleInternalIdMode mode, UnityEditor.AddressableAssets.Settings.AddressableAssetGroup assetGroup, System.Collections.Generic.IEnumerable`1[T] entries) [0x00028] in .\Library\PackageCache\com.unity.addressables\Editor\Build\DataBuilders\BuildScriptPackedMode.cs:1131
at UnityEditor.AddressableAssets.Build.DataBuilders.BuildScriptPackedMode.PrepGroupBundlePacking (UnityEditor.AddressableAssets.Settings.AddressableAssetGroup assetGroup, System.Collections.Generic.List`1[T] bundleInputDefs, UnityEditor.AddressableAssets.Settings.GroupSchemas.BundledAssetGroupSchema schema, System.Func`2[T,TResult] entryFilter) [0x000ab] in .\Library\PackageCache\com.unity.addressables\Editor\Build\DataBuilders\BuildScriptPackedMode.cs:1168
at UnityEditor.AddressableAssets.Build.DataBuilders.BuildScriptPackedMode.ProcessBundledAssetSchema (UnityEditor.AddressableAssets.Settings.GroupSchemas.BundledAssetGroupSchema schema, UnityEditor.AddressableAssets.Settings.AddressableAssetGroup assetGroup, UnityEditor.AddressableAssets.Build.DataBuilders.AddressableAssetsBuildContext aaContext) [0x001b0] in .\Library\PackageCache\com.unity.addressables\Editor\Build\DataBuilders\BuildScriptPackedMode.cs:1083
at UnityEditor.AddressableAssets.Build.DataBuilders.BuildScriptPackedMode.ProcessGroupSchema (UnityEditor.AddressableAssets.Settings.AddressableAssetGroupSchema schema, UnityEditor.AddressableAssets.Settings.AddressableAssetGroup assetGroup, UnityEditor.AddressableAssets.Build.DataBuilders.AddressableAssetsBuildContext aaContext) [0x00013] in .\Library\PackageCache\com.unity.addressables\Editor\Build\DataBuilders\BuildScriptPackedMode.cs:1031
at UnityEditor.AddressableAssets.Build.DataBuilders.BuildScriptPackedMode.ProcessGroup (UnityEditor.AddressableAssets.Settings.AddressableAssetGroup assetGroup, UnityEditor.AddressableAssets.Build.DataBuilders.AddressableAssetsBuildContext aaContext) [0x00061] in .\Library\PackageCache\com.unity.addressables\Editor\Build\DataBuilders\BuildScriptPackedMode.cs:1010
at UnityEditor.AddressableAssets.Build.DataBuilders.BuildScriptBase.ProcessAllGroups (UnityEditor.AddressableAssets.Build.DataBuilders.AddressableAssetsBuildContext aaContext) [0x000ae] in .\Library\PackageCache\com.unity.addressables\Editor\Build\DataBuilders\BuildScriptBase.cs:174
at UnityEditor.AddressableAssets.Build.DataBuilders.BuildScriptPackedMode.BuildDataImplementation[TResult] (UnityEditor.AddressableAssets.Build.AddressablesDataBuilderInput builderInput) [0x00040] in .\Library\PackageCache\com.unity.addressables\Editor\Build\DataBuilders\BuildScriptPackedMode.cs:126
at UnityEditor.AddressableAssets.Build.DataBuilders.BuildScriptBase.BuildData[TResult] (UnityEditor.AddressableAssets.Build.AddressablesDataBuilderInput builderInput) [0x000a5] in .\Library\PackageCache\com.unity.addressables\Editor\Build\DataBuilders\BuildScriptBase.cs:103
With the inner exception:
JSON parse error: The document is empty.
at (wrapper managed-to-native) UnityEditor.EditorJsonUtility.FromJsonOverwriteInternal_Injected(UnityEngine.Bindings.ManagedSpanWrapper&,object)
at UnityEditor.EditorJsonUtility.FromJsonOverwriteInternal (System.String json, System.Object objectToOverwrite) [0x00048] in <ea5c8dc3598c4a5eb7b400757d86957d>:0
at UnityEditor.EditorJsonUtility.FromJsonOverwrite (System.String json, System.Object objectToOverwrite) [0x0003b] in <ea5c8dc3598c4a5eb7b400757d86957d>:0
at UnityEditor.Build.Pipeline.Utilities.ScriptableBuildPipeline.LoadSettings () [0x00026] in .\Library\PackageCache\com.unity.scriptablebuildpipeline\Editor\Utilities\Preferences.cs:199
at UnityEditor.Build.Pipeline.Utilities.ScriptableBuildPipeline..cctor () [0x0000b] in .\Library\PackageCache\com.unity.scriptablebuildpipeline\Editor\Utilities\Preferences.cs:211
This is deeper I could go with the debugger:
The second error is logged at AddressableAssets.Settings.AddressableAssetSettings.BuildPlayerContentImpl():3039
but I couldn’t get more infos.
Tell me if you have any idea of what this issue is and how I could solve it.