忽略Nuget包中的依赖关系

时间:2015-04-28 01:01:07

标签: c# .net visual-studio-2012 nuget nuget-package

我有一个包含5个依赖项的包 - 其中一个是MVC3。在安装此软件包时,我想忽略对MVC3的依赖。我有办法做到吗?

在Nuget Package Manager控制台中,可以选择在安装软件包时忽略依赖关系 -

Install-Package <package name> -IgnoreDependencies

我想知道是否有办法提到要忽略的特定依赖项,而不是忽略所有依赖项。

2 个答案:

答案 0 :(得分:6)

如果您要创建自己的包,请将以下内容添加到您的nuspec

<?xml version="1.0" encoding="utf-8"?>
<packages>
    <package id="MVC3" version="1.6.4" developmentDependency="true"     />
</packages>

请注意以<package开头的行。创建自己的包时,您可以使用developmentDependency="true"排除单个包。这将删除该包作为依赖项。我提供的示例只是虚拟数据。您可以阅读有关此功能的更多信息here

答案 1 :(得分:4)

The docs不要指出任何类似的选项。您必须忽略所有依赖项,然后单独安装所需的依赖项。我相信你在调用Update-Package时也必须忽略所有依赖项,并且如果你曾经使用它,还要单独更新其他依赖项。

如果您是该软件包的创建者,则可以set MVC3 as a development dependency,但如果其他人控制该软件包,这将无济于事。