我有一个ASP.NET Core RC1应用程序,通过GitHub部署部署到Azure(即,我将源代码提交给GitHub,应用程序由Azure构建/部署) .
一切都运行良好,直到最近5天内的某个时间 . 我5天前成功部署了我的应用程序(〜2016-05-16) . 今天我做了一个更改并尝试再次部署,但部署失败了 . 我试图再次部署(认为问题可能是暂时的)并遇到了同样的问题 . 然后我尝试重新部署先前已知的良好提交,该提交再次失败(注意: project.lock
在源代码管理中) . 然后我将主人回滚到之前已知的商品和推送,这触发了另一个部署,同样的错误 .
这可能只是一个巧合,但自从我之前尝试部署以来,已经发布了具有重大突破性变化的RC2 .
查看我的部署日志,第一个错误是:
Failed to resolve conflicts for DNX,Version=v4.5.1
Unable to satisfy conflicting requests for 'Microsoft.Extensions.Configuration':
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.ApplicationInsights.AspNet 1.0.0-rc1-update4),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.AspNet.Hosting 1.0.0-rc1-final),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.Extensions.Configuration.Json 1.0.0-rc1-final),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.Extensions.Configuration.Binder 1.0.0-rc1-final),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.Extensions.Configuration.Binder 1.0.0-rc1-final),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.Extensions.Configuration.Binder 1.0.0-rc1-final),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.Extensions.Configuration.Binder 1.0.0-rc1-final),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.Extensions.Configuration.Binder 1.0.0-rc1-final),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.Extensions.Configuration.Binder 1.0.0-rc1-final),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.Extensions.Configuration.Binder 1.0.0-rc1-final),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.Extensions.Configuration.Binder 1.0.0-rc1-final),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.Extensions.Configuration.Binder 1.0.0-rc1-final),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.Extensions.Configuration.Binder 1.0.0-rc1-final),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.Extensions.Configuration.Binder 1.0.0-rc1-final),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.Extensions.Configuration.Binder 1.0.0-rc1-final),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.Extensions.Configuration.Binder 1.0.0-rc1-final),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.Extensions.Configuration.Binder 1.0.0-rc1-final),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.Extensions.Configuration.Binder 1.0.0-rc1-final),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.Extensions.Configuration.Binder 1.0.0-rc1-final),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.Extensions.Configuration.Binder 1.0.0-rc1-final),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.Extensions.Configuration.Binder 1.0.0-rc1-final),
Microsoft.Extensions.Configuration (>= 1.0.0-rc1-final) (via package/Microsoft.Extensions.Configuration.Binder 1.0.0-rc1-final)"
对于各种传递依赖,我得到了大量的错误( Unable to satisfy conflicting requests for ...
) .
由于这个项目在5天前成功部署了一个特定的提交/ project.lock
,我不得不假设Azure或NuGet中的某些内容发生了变化 .
我删除了我的本地NuGet包缓存,并且能够在Visual Studio和VSCode中成功重建 .
欢迎任何有关故障排除步骤的建议 .
2 回答
这发生在RC2发布时,导致RC1部署出现问题 . 请使用以下解决方法(来自here):
从https://github.com/davidebbo-test/AspNet5RC1复制.deployment和deploy.cmd
在deploy.cmd中编辑this line指向您的project.json
此外,如果你的项目是
rc1-update1
以外的其他东西(例如,如果它在beta8
上),你需要修复该文件中的所有rc1引用(有两个) .在存储库的根目录下提交两个文件 .
话虽这么说,你应该考虑转向RC2 :)
另一件需要检查的是,您是否有任何“开放”库版本要求 . 对我来说,手头的问题是我的1.0.0- *依赖 . 由于它们在版本上“开放”,因此它们试图获取不兼容的rc2依赖项 . 一旦我将这些改为固定的RC1,事情就会自行解决 . 我无法更新到RC2,因为我的其他一些库是不兼容的 .