0

我在部署当前的 BizTalk 解决方案时遇到了一些问题。我刚刚接手了这个项目,部署框架似乎一直工作到现在。一切都设置好了,但是当我运行部署时,会发生此错误:

C:\Program Files (x86)\MSBuild\DeploymentFrameworkForBizTalk\5.0\BizTalkDeploymentFramework.targets(1727,5):错误 MSB4018:UpdateSSOConfigItem 任务出现意外错误。

System.IO.FileNotFoundException:找不到文件或程序集“Microsoft.BizTalk.Interop.SSOClient,Version=9.0.1000.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35”

运行时出现错误C:\Program Files (x86)\MSBuild\DeploymentFrameworkForBizTalk\5.0\BizTalkDeploymentFramework.targets(1727,5)

我猜它来自 SSOFileReader.dll(它应该引用程序集?)实际上,GAC 中缺少程序集。但是 QS 和 PROD 服务器似乎与 DEV 设置相同,它们也缺少程序集,但部署工作正常。

我对所有这些 BizTalk 东西都很陌生,还没有对部署框架做任何事情,希望得到一些帮助:)

4

3 回答 3

1

BizTalk 部署框架针对许多版本的 BizTalk。在最近的几个 BizTalk Server 版本中,Microsoft 在每个版本中都更改了 SSO DLL。因此,部署框架包括其自己的 SSO 客户端 DLL (SSOSettingsFileReader) 的多个版本,以匹配各种 BizTalk DLL 版本。

安装部署框架时,它会检查当前安装的 BizTalk 版本并安装适用于该版本的 SSO DLL。如果您随后升级到另一个版本的 BizTalk,并且您没有重新安装部署框架,那么您将不同步。这就是为什么重新安装解决了您的问题。

于 2016-12-14T07:11:23.623 回答
0

我以前遇到过这个问题。在 SSOFileReader.dll 上使用 ILDASM 来准确确定它所引用的 SSOClient 版本。您的 DEV 服务器实例似乎指向版本 9.0.1000.0,但我怀疑 QS 和 PROD 中的 BTDF DLL 可能不同。

如果是这种情况,您应该能够将 DEV 计算机上的 SSOFileReader.dll 替换为引用早期版本 SSOClient 的副本。

还要检查所有机器上部署的 BTDF 版本。我知道你说它们看起来是一样的,但是如果你使用文件系统而不是添加/删除程序,那么 5.5 和 6.0 版本看起来是一样的。

于 2016-12-06T11:26:55.140 回答
0

对于同样面临这个问题的任何人:我的解决方案是完全重新配置部署项目并将部署框架更新到当前稳定(5.6)版本。

  • 删除旧的部署框架
  • 更新到当前稳定版本
  • 从您的解决方案中删除旧的部署项目
  • 创建新的部署项目
  • 部署->为我工作!
于 2016-12-12T11:27:03.307 回答