事情是这样的,将一台电脑上的unity项目文件copy到另一台电脑上运行,vs打开解决方案后,竟然显示找不到unity的类型或命名空间,引用里全是报错。
网上搜了一下解决方法,有如下方案:
1.先把脚本编辑器改成MonoDevelop,然后用MonoDevelop随便打开一个脚本,打开后可以关闭MonoDevelop
再把脚本编辑器改成VS,再用VS打开脚本的时候发现引用正常了。
(ps:需要MonoDevelop,没安装行不通......还是更习惯使用vs一些,毕竟宇宙第一IDE,再加上本身也是做.Net开发的)
2.用文本编辑器打开工程目录下面的 Assembly-CSharp.csproj、Assembly-CSharp-Editor.csproj 两个文件,对里面的所有不正确的路径进行修改即可
(ps:查看后发现确实路径不一样,第一个电脑unity是在D盘,第二天电脑是在E盘,遂将里面的D替换成E,但还是出现报错,而且,这样改也很麻烦,因为我要频繁在两台电脑切换使用,修改就跟频繁)
好吧,接下来就是本文的重点,我无意中发现通过更新Unity的包可以刷新引用路径错误的问题,操作如下
打开Unity的PackageManager窗口并找到VisualStudioEditor,选择一个版本进行升/降级
然后再打开vs解决方法,报错就不见了