使用NuGet软件包进行选择性安装
问题描述:
我创建了NuGet软件包的版本,已上传,并且工作正常。 我在我的软件包中已经安装了一些库,这些库已经在软件包内的不同目录中填充了。使用NuGet软件包进行选择性安装
有些用户可能需要我的NuGet包的特定目录,一些库可能并不需要。安装时,我应该提示用户他们需要安装哪个部分。
一个解决方案:逻辑分离包可能是一个解决方案。就像在不同的软件包中打包库一样,可以安装所需的软件包。
但如果它已经取得了选择性安装,那么它会更容易。我不知道NuGet是否有这样的选择。任何帮助,将不胜感激。
答
的NuGet有框架的版本,并使用约定的平台支持,可以在docs他们读了。你可以group them by target framework version或by target framework profile。
如果你想选择安装库,你说你要选择安装依赖:你应该在不同的NuGet包拆分起来,并宣布你的依赖。这些依赖关系也可以是grouped。
如果你的条件不能使用Framework版本或配置文件来定义,你应该拿出自己的入门级的NuGet包和搞垮适当的依赖链(或使用PowerShell hooks此)。
除了基于命名约定和Framework版本的逻辑分离之外,是否没有办法提示用户选择性安装库或其他人? – BinaryMee 2013-04-09 04:20:13
用户应该选择合适的包装。一个包应该被设计为一个单一的目的。你可以使用PowerShell钩子来偏离它,但是NuGet并不是为这个场景设计的,因为它是一个包管理工具,而不是“软件安装程序”。也许你应该检查是否创建一个MSI或更适合支持你的情况? – 2013-04-09 08:01:54