代码之家  ›  专栏  ›  技术社区  ›  Brent Arias

.Net Core和NuGet

  •  67
  • Brent Arias  · 技术社区  · 8 年前

    installed .net core from this site 。玩弄它导致了许多相关的包管理问题:

    1. 这个 dotnet restore 命令继续“安装”.net core NuGet包。这些软件包“安装”在哪里?未创建新文件夹。
    2. 这个 点网还原 对于“hello world”,最小的例子需要大约100个NuGet包,其中99%可能与“hello world”应用程序无关。当然,.net本机构建将删除所有不需要的内容,但我希望 restore 也会抓到很少的东西(三四个包裹,而不是一百个)。为什么会这样?
    3. 我创建了第二个“hello world”项目,并再次运行 点网还原 。这一次根本没有安装包。似乎所有第一次安装的软件包都进入了某个全球位置进行共享。我想,网络核心不是这样的。我认为.Net Core项目将其所有依赖项都保留在本地。我针对的唯一框架是 dnxcore50 。为什么会有这种行为?
    4. 我想“卸载”所有这些全局包,然后再试一次(仅用于学习目的)。这是如何实现的?请记住,正如问题1所述,我不知道所有这些文件都安装在哪里。
    5. 几乎所有通过 恢复 命令被列为测试版。古怪的我想,Net Core是RC1,而不是beta。对此感到困惑。为什么会这样?

    我也很好奇什么文档可以/会向我解释这一切。我试着在谷歌上搜索这些问题,但一无所获(也许只是糟糕的谷歌fu?)。

    3 回复  |  直到 8 年前
        1
  •  55
  •   Vivek N    8 年前

    更新:

    1. nuget包安装在全局位置。默认情况下,它以前是..\Users\[YourUserFolder]\。dnx\packages,但似乎已更改为..\Users\[YourUserFolder]\.nuget\package

    在NuGet 3+中,您可以使用NuGet CLI的以下命令获取全局包文件夹位置

    nuget locals global-packages -list
    

    有关NuGet的更多详细信息,请查看以下链接


    1. 默认ASP。Net模板有这么多包。自从你第一次尝试之后,它就尝试了所有100个包裹

    2. 您的nuget全局位置中已经有这些包,它跳过了还原。

    3. 删除packages文件夹下的所有内容(位置如1所示)

    4. 一些测试包就在那里。你可以去项目。json文件(可在web根目录下获得),并使用依赖项部分。

        2
  •  15
  •   Dibran    8 年前

    我刚刚发现,.NET核心项目中使用的NuGet包还有一个位置。其位于:

    C:\Users\[User]\.nuget\packages

    我认为这个位置包含常规的.NETFramework包。

    更新:感谢brappleye3,这里有一个 link 有关dotnet还原的文档。

        3
  •  2
  •   Jester    6 年前

    我在一起工作 .Net核心2.x 我想, NuGet 4.x 。在此处找到包位置:

    C: \Program Files(x86)\Microsoft SDKs\NuGetPackages\