我installed .net core from this site . 使用它导致了许多相关的包管理问题:
-
dotnet restore
命令继续执行"install" .net核心NuGet包 . 这些包裹在哪里"installed"?未创建新文件夹 . -
dotnet restore
为"hello world"最小示例需要大约一百个NuGet包,其中99%可能与"hello world" app无关 . 当然,.net本机构建将删除所有不需要的东西 - 但我预计restore
也会 grab 很少(三个或四个包,而不是一百个) . 为什么会这样? -
我创建了第二个"hello world"项目并再次运行
dotnet restore
. 这次没有安装任何软件包 . 似乎第一次安装的所有软件包都进入了一些全球位置进行共享 . 我以为.Net Core没有那样工作 . 我认为.Net Core项目在本地保留了所有依赖项 . 我定位的唯一框架是dnxcore50
. 为什么会这样? -
我想"uninstall"所有这些全球包,并再试一次(仅用于学习目的) . 怎么可能完成?请记住,正如问题#1所述,我不知道所有这些文件的安装位置 .
-
几乎所有通过
restore
命令安装的软件包都列为beta版 . 奇 . 我以为.Net Core在RC1,而不是beta . 对此感到困惑 . 为什么会这样?
我也很好奇哪些文档可以/将要解释所有这些对我来说 . 我尝试使用谷歌搜索这些问题,并没有发现任何东西(也许只是可怕的google-fu?) .
3 回答
Update:
在NuGet 3中,您可以使用NuGet CLI的以下命令获取global-packages文件夹位置
有关NuGet的更多详细信息,请查看以下链接
http://blog.nuget.org/20151008/NuGet-3-What-and-Why.html
https://docs.nuget.org/ndocs/consume-packages/configuring-nuget-behavior
https://docs.nuget.org/ndocs/tools/nuget.exe-cli-reference#locals
默认的ASP.Net模板有很多包 . 自从您第一次尝试以来,它尝试了所有这100个包
您已经在nuget全局位置拥有这些软件包,它会跳过恢复 .
删除包文件夹下的所有内容(1中指示的位置)
有些测试包在那里 . 您可以转到project.json文件(在Web根目录下可用)并使用依赖项部分 .
我正在使用 .Net Core 2.x ,我认为, NuGet 4.x . 找到包裹位置:
我刚刚发现.NET核心项目中使用的NuGet包还有另一个位置 . 它位于:
C:\Users\[User]\.nuget\packages
我认为这个位置包含常规的.NET Framework包 .
更新:感谢brappleye3,这里有关于dotnet还原的文档的link .