使用ILRepack.Lib.MSBuild.Task打包解决方案时出现“Type exists in both...”错误的求助
使用ILRepack.Lib.MSBuild.Task打包解决方案时出现“Type exists in both...”错误的求助
大家好,我最近在使用ILRepack.Lib.MSBuild.Task打包自己的解决方案时碰到了一个构建错误,折腾了好久没搞定,想过来请教下有没有前辈或者小伙伴遇到过类似的问题?
我的解决方案里有两个项目:一个是业务项目Project1,另一个是对应的单元测试项目TestProject1。Project1引用了NugetPackage1这个第三方包,而TestProject1是通过引用Project1来间接使用这个NuGet包的。
现在我遇到的具体错误提示是这样的:
The type 'Class1' exists in both 'NugetPackage1'... and 'Project1'...
我自己琢磨了下,应该是ILRepack按照配置把Project1和依赖的NugetPackage1合并打包到一起了,但当构建TestProject1的时候,系统检测到同一个类同时存在于原始的NugetPackage1和打包后的Project1程序集里,所以抛出了这个重复定义的错误。
后来我尝试把ILRepack要打包的包设置为internalize(内部化),结果新的问题又来了——测试项目完全看不到要测试的那些类了,根本没法正常执行单元测试。
有没有人碰到过这种两难的情况?求个可行的解决办法,万分感谢!
内容来源于stack exchange
相关产品推荐
相关产品推荐

