【发布时间】:2015-04-09 22:28:48
【问题描述】:
我设置了一个内部 NuGet 服务器来托管内部 dll 包。设置进行得很顺利。规范和 nupkg 已成功创建。但是,当我启动一个测试项目并尝试从 Manage NuGet Packages 安装它时,它会失败。
内部包显示在“管理 NuGet 包”下,带有一个安装按钮。我点击安装,但它什么也没做。我检查了我的引用文件夹,并没有看到任何添加。
如果我在解决方案级别选中管理 NuGet 包,它有一个绿色复选标记表示它已安装,但没有给我一个管理选项来查看它安装到哪个项目。
我的问题与下面的这篇文章有些相似。唯一的区别是我的库没有子文件夹。我只有 1 个 dll,我将 nupkg 文件直接放在 Packages 文件夹下。 NuGet package fails to install
我不确定我做错了什么。有什么建议吗?
【问题讨论】:
-
听起来您添加的 NuGet 包只是一个解决方案包。包 ID 是否显示在解决方案的 package.config 文件中(在 .nuget/packages.config 中)?如果不查看 .nupkg 文件中的内容,很难判断它是否是仅解决方案包。
-
不,没有。这就是我在 .nuget > packages.config
<?xml version="1.0" encoding="utf-8"?> <packages> <package id="NuGet.CommandLine" version="2.8.2" /> </packages>中的内容,不过我的规范文件中确实指定了一个 id。我是配置内部 NuGet 的新手。我不知道有什么区别。我正在关注一个教程,我认为可以在两个级别(解决方案和项目)安装相同的 nupkg。 -
无法在两个级别上安装 NuGet 包。如果 NuGet.CommandLine 是您安装的包,那么这是一个解决方案级别的包。如果你安装另一个包,比如 NUnit,那么它将在项目级别安装。
-
@MattWard 感谢您的提示。我回去再次阅读文档。我把它修好了。基本上我正在查看文档如何创建内部包并将其复制并粘贴到“包”文件夹中。问题是它只是整个画面的一个子集。我找到了很好的完整文档并且能够解决这个问题。再次感谢您对此进行调查。
标签: nuget nuget-package nuget-server