15

我正在开发一个 NuGet 包,它将一堆内容(视图、脚本、CSS 文件)安装到 Web 应用程序中,并试图改进更改-编译-测试周期。我有两个项目 - 框架本身(“包”)和使用它的演示网络应用程序(“网站”)

作为 Visual Studio 构建过程的一部分,我需要做的是:

  1. (作为包构建后的一部分)Nuget 包 Package.nuspec -OutputDirectory ..\pkg\
  2. (作为网站预构建的一部分)Nuget 卸载包
  3. (作为网站预构建的一部分)Nuget 安装包 -source ..\pkg\

问题是 - 似乎没有任何命令行相当于Uninstall-Package从 NuGet 包管理器控制台执行的操作。我错过了什么吗?

4

2 回答 2

10

不,目前没有。

此外,nuget.exe install并没有真正安装任何东西。nuget.exe install真正做的是:nuget.exe restore它在输出目录中恢复提取的包。它不运行 PowerShell 挂钩(例如 install.ps1),也不修改任何目标项目(因为没有目标项目)。

于 2013-10-30T20:38:17.653 回答
2

有一种方法,但既不使用 Visual Studio 也不使用 NuGet.exe。使用 SharpDevelop 的自定义构建,您可以从命令行安装和卸载 NuGet 包并运行它们的 PowerShell 脚本。

SharpDevelop 及其 NuGet 插件的此自定义构建允许您从 PowerShell 但在 Visual Studio 之外运行命令,例如 Install-Package 和 Uninstall-Package。

限制是它需要 SharpDevelop 可用,并且它也不支持任何特定于 Visual Studio 的 PowerShell 脚本。

于 2013-10-30T22:05:34.953 回答