Unity使用Newtonsoft报错的解决方案

Unity 使用 Newtonsoft 报错的解决方案

问题描述

最近在做人机交互课的实验,主要开发工具选择了 Unity3D 。把做好的项目通过 git 上传后,又用 git clone 了下来来测试项目上传是否成功。结果发现 clone 回来的项目,出现了一些问题。
在项目中,我用到了 Newtonsoft.Json 这个包来处理我需要的 Json 数据。

using Newtonsoft.Json;
using Newtonsoft.Json.Linq;

在原项目中并没有出现什么问题(这里是因为之前设置了一些东西,具体我会在解决方法部分的方法一提到),但是在克隆回来的项目中 Unity3D 的控制台直接甩了个错误给我:
The type or namespace name 'Newtonsoft' could not be found (are you missing a using directive or an assembly reference?)
在这里插入图片描述

这是因为 Json.NET 官方没有直接支持 Unity ,导致 Unity 无法找到正确的程序集。

解决方法

下面我将给出两种解决方案,两种方案都是可行的。

方法一:使用 Unity 的 Package Manager 自动导入

Project 标签页中,右键点击 Packages
在这里插入图片描述
在打开的菜单栏中点击 View in Package Manager
在这里插入图片描述
在打开的 Package Manager 中,点击左上角的加号,选择通过名称添加。
在这里插入图片描述
包名是 com.unity.nuget.newtonsoft-json ,我发这篇博客时,版本号为 2.0.2,各位读者也可以填该版本号,导入后 unity 会提示你进行更新。
在这里插入图片描述
在这里插入图片描述
添加成功后 Unity 的报错信息就消失了。

方法二:访问 GitHub 下载 unitypackage 文件手动导入

访问GitHub下载相应的支持Unity的 Newtonsoft.Json 资源包。点我跳转
在这里插入图片描述

选择需要的版本进行下载(由于我使用到了 Newtonsoft.Json.Linq ,因此我需要下载的是 JsonNet.9.0.1.unitypackage )。
在这里插入图片描述
打开报错的 Unity 项目,双击下载好的 unitypackage 文件,使用 Unity Editor 打开。
在这里插入图片描述
将所有包都勾选好点击“导入”即可。此时 Unity 会重新编译一遍脚本。
在这里插入图片描述
编译成功后你就会发现控制台里已经没有报错的信息了。
在这里插入图片描述

  • 31
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小栗帽今天吃什么

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值