Unity 2020.1.10f1 无法打开Package Manager报空引用异常
问题现象
- 复现环境:Windows 10、macOS双端运行Unity 2020.1.10f1版本
- 触发操作:点击顶部菜单栏
Window -> Package Manager立即触发报错 - 已尝试无效操作:将Unity编辑器布局重置为默认状态,报错仍稳定复现
- 完整报错堆栈:
NullReferenceException: Object reference not set to an instance of an object UnityEditor.PackageManager.UI.PackageManagerWindow.SelectPackageAndFilter (System.String packageIdOrDisplayName, System.Nullable`1[T] filterTab, System.Boolean refresh, System.String searchText) (at <3037c1046402403280ab8b0782ca806f>:0) UnityEditor.PackageManager.UI.PackageManagerWindow.OpenPackageManager (System.String packageNameOrDisplayName) (at <3037c1046402403280ab8b0782ca806f>:0) UnityEditor.PackageManager.UI.Window.Open (System.String packageNameOrDisplayName) (at <3037c1046402403280ab8b0782ca806f>:0) UnityEditor.PackageManager.UI.Window.ShowPackageManagerWindow (UnityEditor.MenuCommand item) (at <3037c1046402403280ab8b0782ca806f>:0)
问题根因
该报错是Unity 2020.1.10f1版本内置Package Manager模块的已知原生缺陷,跨双系统复现的特征可以排除单设备配置异常、编辑器布局错误的影响:空引用的触发逻辑位于Package Manager窗口初始化时的包列表加载分支,代码未做对应对象的空值校验,和用户本地操作无关。
可落地修复步骤
- 低风险临时修复:关闭Unity编辑器,删除项目根目录下
Library/PackageCache文件夹,重新打开项目让Unity重新拉取、解析所有包的元数据,多数情况下可绕过空引用崩溃,正常打开Package Manager - 彻底修复:将项目对应的Unity编辑器升级至2020.1.11f1及以上小版本,该空引用问题已在后续版本中被官方修复
- 即时绕过操作:如果不想改动项目缓存和编辑器版本,可在Project窗口的空白区域右键,选择
Show in Explorer/Finder,该路径触发的Package Manager加载逻辑会跳过菜单入口的空引用分支,可正常打开窗口使用功能
内容的提问来源于stack exchange,提问作者jbassking10
相关产品推荐
相关产品推荐

