最近遇到一个怪问题,在github下载的开源项目都不能自动生成,生成时报错
找不到资产文件“ E:\***\ obj\ project.assets.json”。运行 NuGet包还原以生成此文件
于是在某度上搜索解决方案,是用执行命令的方式重新生成解决,但是改变不了根本。查了一下官网,原来有二种错误的解决方案,一种是执行命令的方法,另外一种是因为vs的nuget的设置问题导致。下面我们来具体看看如何使用:
1、执行命令的方式解决
点击工具,分别展开命令行-开发者命令提示,打开命令提示,如下图1
图1
在命令提示框中输入 msbuild -t:restore
图2
最后运行 msbuild 或dotnet build ,自动还原NuGet包
使用命令的方式也可以直接在项目所在的文件夹打开CMD,输入dotnet build。
微软官网解释的原因:“project.assets.json文件在使用 PackageReference 管理格式时维护项目的依赖项关系图,用于确保在计算机上安装了所有必需的包。由于此文件是通过包还原动态生成的,它通常不添加到源代码管理中。因此,该错误在使用工具生成项目时出现,例如,不自动还原包的 msbuild”
2、在nuget设置中解决
其实这个错误的本质是关闭了允许nuget自动安装 包的设置,解决方法是点击工具,分别展开NuGet包管理器、程序包管理器设置。
打卡设置后勾选“允许NuGet下载缺少的程序包”和“在Visual Studio中生成期间自动检查缺少的程序包”就可以了,如下图
这个问题可能是有包冲突后关闭了这个设置。
参考:微软官方文档
支持小薇
腾讯云福利 :
云服务器入门体验低至6.6元/月,更多浏览
链接:https://curl.qcloud.com/1VVs7OBH
关注: DotNet开发跳槽
觉得不错,请点个在看 呀
发表评论