对于一个包对其他库的每个依赖项,这些库是否也需要解析和安装?
例如,我创建了一个使用的包NLog
, Postsharp
and WindowsAzure.Storage
:
我的软件包的客户端现在也必须安装这些软件包吗?为什么不能将这些依赖项 DLL 包含在包中?
当使用者安装您的 nuget 包时,nuget 也会自动解析并安装依赖包。
有可能将 dll 包含在包中但不建议这样做。因为无论怎样,他们必须引用他们需要使用你的包的 dll(在本例中NLog
, PostSharp
and WindowsAzure.Storage
)。它比消费者更好地控制安装哪些库。
通过 nuget 获得依赖项的另一个好处是,消费者可以决定安装较新版本的 WindowsAzure.Storage 库,当您没有将 dll 注入到包中时,他可以轻松完成此操作。否则,您可能会遇到一些混乱的程序集运行时错误。
您可以通过用于构建 nuget 包的 nuspec 文件来控制包包含的内容。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)