首页 > 代码库 > ScriptableObject本地序列化后重启Unity后报The associated script can not be loaded.Please fix any compile errors and assign a valid script的坑

ScriptableObject本地序列化后重启Unity后报The associated script can not be loaded.Please fix any compile errors and assign a valid script的坑

踩坑

做编辑器一些设置序列化存在本地的时候,继承自ScriptableObject的类通过

技术分享

创建的asset文件.

 

在重启Unity后查看这个asset发现上面的所有序列化属性丢失,报的错就是

技术分享

 

在不存在的网站找了一番之后,找到答案

 

需要本地序列化的ScriptableObject必须拥有自己的同名实体脚本文件.

也就是在上图Scipt选项中能找到的类名.cs文件

Unity貌似会根据序列化的类名去找到这个脚本文件,重新检查脚本的可序列化项,最后才将能序列化的选项重新反序列化出来.

 

那问题知道了,只要新建一个数据类的同名cs文件,再将代码移过去

 

测试--

 

问题解决

ScriptableObject本地序列化后重启Unity后报The associated script can not be loaded.Please fix any compile errors and assign a valid script的坑