1

我正在尝试将 RosSharp ( https://github.com/siemens/ros-sharp ) 和混合现实工具包集成到一个 Unity 项目中。然而,这两个库都使用Newtonsoft.Json导致错误:

error CS1703: An assembly `Newtonsoft.Json' with the same identity has already 
been imported. Consider removing one of the references
Assets/HoloToolkit/Utilities/Scripts/GLTF/Plugins/JsonNet/Newtonsoft.Json.dll 
(Location of the symbol related to previous error)
Assets/RosSharp/Plugins/Newtonsoft.Json.dll (Location of the symbol related to 
previous error)

删除其中一个 DLL 将导致许多其他错误。

通过开发人员文档( https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/compiler-messages/cs1703 )查找此错误:建议我使用以下标志编译项目:/t:library /out:.\bin2\cs1703.dll /keyfile:key.snk.

如何在 Visual 中使用特定标志编译 C# 解决方案。

我相信这个问题也可以使用外部别名来解决,尽管我不知道这些是如何实现的。

4

1 回答 1

0

事实证明,我需要使用正确的 Unity 版本 - 2017 和(在我的情况下为 2017.4.16),在 Visual Studio 中,我还需要转到项目 > 管理 NuGet 包并更新我的 Newtonsoft 包。

于 2018-11-28T22:13:08.423 回答