【发布时间】:2016-09-13 21:47:25
【问题描述】:
这是我第一次尝试创建 NuGet 包,我对一件事有点困惑:
如果我在用于构建自己的自定义 NuGet 包的项目中引用其他外部 NuGet 包(例如,Ninject、Automapper 等),当我的包最终获得时,我应该如何处理这些依赖项在实际项目中使用/安装?
到目前为止,从我最初的实验来看,生成的 NuGet 包会检测到那些其他依赖项(Ninject、Automapper 等),并将它们显示在 NuGet 的 Dependencies 部分下用户界面。然后,当我单击安装时,它实际上会从 Nuget.org 下拉并安装 Ninject/Automapper。
这就是我困惑的地方。到那时,我创建的 nuget 包程序集不是 Ninject/Automapper 程序集的一部分吗?我的自定义 NuGet 包的消费者不应该不在乎/看到他们依赖于 Ninject/Automapper 吗?
其他背景信息
这些是迄今为止我创建自定义 NuGet 包所采取的步骤:
-
通过执行以下命令创建了 .nuspec 文件(在 MyProject.csproj 文件所在的同一文件夹中):
nuget.exe spec -
通过执行以下命令创建了实际的包文件 (.nupkg):
nuget.exe pack MyProject.csproj
【问题讨论】:
标签: xml nuget nuget-package