不能使用自制的NuGet包

时间:2014-03-25 09:57:40

标签: nuget nuget-package

我正在调查内部使用NuGet来共享跨多个解决方案使用的程序集。尽管文档使它看起来很简单,但我只是遇到了一些问题。我现阶段有两个问题:

1)当我创建包时,NuGet会将其报告为没有依赖关系'。实际上,程序集的项目对其他(官方)NuGet包有很多依赖。我以为NuGet会发现这个。有什么我需要做的,以便NuGet知道我的程序集本身有NuGet依赖吗?

2)当我尝试将包添加到另一个解决方案中的项目时,它实际上并没有将dll添加到项目中(即在项目的参考中)。包管理器GUI在已安装的列表中列出包,但是没有显示“管理”列表。按钮,就像其他包一样。相反,它只显示一个“卸载”#39;按钮。因此,好像整体解决方案现在已经知道我的包,但我无法将其添加为任何项目的参考,这显然是没有用的。无论我是使用GUI还是命令行安装,都会发生这种情况。有谁知道为什么会发生这种情况?

提前致谢。

1 个答案:

答案 0 :(得分:0)

对于问题1,如果您正在使用nuget.exe包并且您的项目安装了某些软件包,则这些软件包将作为依赖项添加。如果软件包安装到主项目引用的另一个项目,请执行nuget.exe pack -includereferencedprojects。有关详细信息,请参阅http://docs.nuget.org/docs/reference/command-line-reference#Pack_Command_Examples

对于问题2,您可能已经安装了一个解决方案级别的包,其中没有Content或Lib文件夹。如果您安装了项目级别的软件包,那么您应该能够看到管理按钮。

希望这有帮助。