我在部署当前的BizTalk解决方案时遇到了一些问题。我刚刚接管了这个项目,似乎部署框架一直在运作。一切都已设置,但是当我运行部署时会出现此错误:
C:\ Program Files(x86)\ MSBuild \ DeploymentFrameworkForBizTalk \ 5.0 \ BizTalkDeploymentFramework.targets(1727,5):错误MSB4018:UpdateSSOConfigItem-Task上出现意外错误。
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的新东西,并且尚未对部署框架做过任何事情,希望得到一些帮助:)
答案 0 :(得分:1)
BizTalk的部署框架针对许多版本的BizTalk。在最近的几个BizTalk Server版本中,Microsoft已在每个版本中更改了SSO DLL。因此,部署框架包含其自己的SSO客户端DLL(SSOSettingsFileReader)的多个版本,以匹配各种BizTalk DLL版本。
安装Deployment Framework时,它会检查当前安装的BizTalk版本,并安装适用于该版本的SSO DLL。如果您随后升级到另一个版本的BizTalk,并且未重新安装Deployment Framework,则表示您不同步。这就是为什么重新安装解决了你的问题。
答案 1 :(得分:0)
我之前遇到过这个问题。在SSOFileReader.dll上使用ILDASM来确定它引用的SSOClient的版本。您的DEV服务器实例似乎指向版本9.0.1000.0,但我怀疑QS和PROD中的BTDF DLL可能不同。
如果是这种情况,您应该能够使用引用早期版本SSOClient的副本替换DEV计算机上的SSOFileReader.dll。
同时检查所有机器上部署的BTDF版本。我知道你说他们看起来是一样的,但是如果你去文件系统而不是添加/删除程序,版本5.5和6.0看起来都是一样的。
答案 2 :(得分:0)
对于任何面临此问题的人: 我的解决方案是完全重新配置部署项目并将部署框架更新为当前的稳定版(5.6)。