首页 > 解决方案 > 由于“'MYAPPLICATION.ServiceFabricPkg'已更改”而无法升级 Service Fabric 服务,即使它没有更改

问题描述

我已在我的 Service Fabric 应用程序中增加了一项服务的版本。

但是,当我尝试升级集群时,出现以下错误:

The content in CodePackage Name:Code and Version:1.0.0 in Service Manifest 
3>'MYAPPLICATION.ServiceFabricPkg' has changed, but the version number is the same.
3>At C:\Program Files\Microsoft SDKs\Service 
3>Fabric\Tools\PSModule\ServiceFabricSDK\Publish-UpgradedServiceFabricApplication.ps1:135 char:38

这对我来说是一个大问题,因为 Service Fabric 的最大卖点之一是能够更新一项服务而无需触及其他服务。

有谁知道这个的解决方案?

研究指出错误与压缩有关,所以我补充说

<CopyPackageParameters CompressPackage="false" />

到我的 Local5Node.xml 文件。

这没什么区别。

我正在尝试通过使用 Visual Studio 2017 发布来做到这一点。

干杯

保罗

标签: c#azure-service-fabric

解决方案


发生这种情况是因为您更新了服务二进制文件并且没有使用新版本号更新清单,清单指向与以前相同的版本,但二进制文件不同。

Service Fabric 使用清单版本来确定在应用程序升级期间应该更新哪些服务,因为您没有设置新版本并且二进制文件已更改,它将回滚以避免出现问题。

快速搜索此错误会返回一些结果以及原因,请查看以下答案:

通过 VSTS CI/CD 升级 Azure Service Fabric 时出错

在 VSTS 版本上部署 Service Fabric 服务版本升级失败

差异化包装


推荐阅读