最新版本的ServiceStack 3中是否存在构建问题?

And*_*Ban 9 servicestack servicestack-bsd

在使用ServiceStack 3.9.71.0编译项目时,我在visual studio中出现了以下警告(似乎也影响了最新版本).不知道为什么它之前没有显示,但是在我创建了一个引用我的主项目并且都引用了相同服务堆栈DLL的测试库后它已经开始显示:

警告2发现无法解析的同一依赖程序集的不同版本之间发生冲突.当日志详细程度设置为详细时,这些引用冲突将在构建日志中列出.C:\ Program Files(x86)\ MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets 1635

检查构建日志显示:

10>"ServiceStack.Interfaces,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null"和"ServiceStack.Interfaces,Version = 3.9.60.0,Culture = neutral,PublicKeyToken = null"之间存在冲突.10>"ServiceStack.Interfaces,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null"被选中,因为它是主要的并且"ServiceStack.Interfaces,Version = 3.9.60.0,Culture = neutral,PublicKeyToken = null"不是.10>依赖于"ServiceStack.Interfaces,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null"[C:\ proj\packages\ServiceStack.Common.3.9.71\lib \net35\ServiceStack.Interfaces.dll]的引用] ......

此错误是正确的,因为除了旧版本的ORMLite之外,NuGet中的最新版本似乎引用了旧版本的ServiceStack.Interfaces(http://i.imgur.com/4vw3069.jpg).我已从我的系统中删除了所有以前版本的ServiceStack,因此它不会拾取任何旧的DLL.我的项目只引用了ServiceStack,common,interfaces和text; 我删除了ORM,因为我没有使用它,但将它添加到两个项目都无济于事.

有点不确定我如何解决这个错误,因为Github似乎自3.9.60后没有更新,任何想法?

Sco*_*ott 4

这只是一个警告,它应该构建,并且可以安全地忽略。该错误消息确实表明构建系统正确选择了 v1.0.0.0。

选择“ServiceStack.Interfaces,版本=1.0.0.0,文化=中性,PublicKeyToken=null”

大约 4 个月前的这次提交,版本被故意从 3.9 重置为 1.0 。这与 ServiceStack v4 的 beta 版本一致。据推测,v3 程序集版本会重置为较低的数字,以便在不侵犯 v4 版本编号的情况下创建未来的 BSD 版本,并表示项目所有权的明确变化。

  • 我怎样才能抑制它?我们的 CI 流程要求代码中不存在警告。请指教 (2认同)