【问题标题】:Nuget update calls uninstall.ps1 and then install.ps1Nuget 更新调用uninstall.ps1,然后调用install.ps1
【发布时间】:2016-08-01 19:55:51
【问题描述】:

当使用 Nuget 更新已安装的包时,它调用“uninstall.ps1”,然后调用“install.ps1”。对于我正在处理的自定义项目,我需要在“uninstall.ps1”中知道调用卸载的原因是什么。是因为软件包正在更新或删除吗?基于我想要处理不同逻辑的原因。

似乎有可能知道差异,因为更新的控制台输出显示:

解决了安装包“[Id].[Version]”执行脚本文件'uninstall.ps1'...

的操作

但是对于卸载它说:

解决了卸载包'[Id].[Version]'执行脚本文件'uninstall.ps1'...

请注意,调用的脚本是相同的,但 Nuget 操作不同。 Nuget 操作(安装与卸载)是否可以从某个变量、属性甚至临时文件中检索?无论使用 VS2012、VS2013 还是 VS2015,此行为似乎都是相同的。

【问题讨论】:

  • 没有 update.ps1 脚本。因此,为了更新软件包,它确保通过运行uninstall.ps1 来消除old 安装脚本的任何副作用。然后运行 ​​install.ps1。否则,当您通过先删除包然后再添加它进行更新时会发生同样的事情。

标签: visual-studio-2015 nuget


【解决方案1】:

也许您可以在此处分享有关如何真正安装和更新您身边的软件包的详细步骤。你的 VS2015 和 NuGet 版本是多少?

Alternative for Uninstall.ps1 as it is not run for nuget 3.x

我使用带有 NuGet 3.5 的最新 VS2015 中的包管理器控制台测试了一个简单示例,我安装了一个旧包,然后我安装新包或更新它,即使我没有安装它也会删除旧版本找到与您相同的消息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多