我在项目中安装了一个nuget程序包,该程序包依赖于某些系统dll(例如system.IO/system.Reflection
等)。因此,当我安装该nuget程序包时,在我的本地程序中一切正常。但是,当我将代码推送到Bamboo(构建服务器)时,我开始收到多个程序集错误:
26-Mar-2019 05:30:23 CSC : error CS1703: Multiple assemblies with equivalent identity have been imported: 'E:\agt01\ENS-EB577-BEQI\Bin\Packages\System.Xml.ReaderWriter.4.3.0\lib\net46\System.Xml.ReaderWriter.dll' and 'C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.2\Facades\System.Xml.ReaderWriter.dll'. Remove one of the duplicate references. [E:\agt01\ENS-EB577-BEQI\myProject\myProject.csproj]
26-Mar-2019 05:30:23 CSC : error CS1703: Multiple assemblies with equivalent identity have been imported: 'E:\agt01\ENS-EB577-BEQI\Bin\Packages\System.Runtime.InteropServices.4.3.0\lib\net462\System.Runtime.InteropServices.dll' and 'C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.2\Facades\System.Runtime.InteropServices.dll'. Remove one of the duplicate references. [E:\agt01\ENS-EB577-BEQI\myProject\myProject.csproj]
26-Mar-2019 05:30:23 CSC : error CS1703: Multiple assemblies with equivalent identity have been imported: 'E:\agt01\ENS-EB577-BEQI\Bin\Packages\System.Reflection.4.3.0\lib\net462\System.Reflection.dll' and 'C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.2\Facades\System.Reflection.dll'. Remove one of the duplicate references. [E:\agt01\ENS-EB577-BEQI\myProject\myProject.csproj]
26-Mar-2019 05:30:23 CSC : error CS1703: Multiple assemblies with equivalent identity have been imported: 'E:\agt01\ENS-EB577-BEQI\Bin\Packages\System.IO.4.3.0\lib\net462\System.IO.dll' and 'C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.2\Facades\System.IO.dll'. Remove one of the duplicate references. [E:\agt01\myProject-EB577-BEQI\myProject\myProject.csproj]
26-Mar-2019 05:30:23
26-Mar-2019 05:30:23 617 Warning(s)
26-Mar-2019 05:30:23 4 Error(s)
因此,基本上,Bamboo试图从C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.2\Facades\
中选择那些系统dll。
因此要解决此问题,我必须确保从csproj中将这些引用作为nuget软件包删除,并推送到Bamboo以获得成功的构建,但是在本地测试时,我必须将它们作为nuget软件包添加到使事情起作用。
以前有人遇到过这样的问题吗?
答案 0 :(得分:0)
对于您包括的特定错误,似乎您在.csproj
文件中重复导入了程序集。我将打开myProject.csproj
并选择Bin\Packages
中的那些,或者选择作为.Net Framework安装的一部分安装的系统的那些。
我个人会使用系统安装的那些,它们是框架安装的一部分。如果在Bamboo代理上找不到问题,请确保.NET Framework 4.6.2已安装在构建代理的指定位置(C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.2
)