我试图使用nopCommerce(这是写在。net核心),但当我想运行项目时,我面临52个错误告诉我运行一个nuget包恢复

Assets文件~\obj\project.assets。Json没有找到。运行NuGet包还原生成此文件。Nop.Web.MVC.Testsote

当我使用右键单击解决方案并选择恢复Nuget包时,我得到这样的消息:

所有的包都已经安装,没有什么要恢复的。

但是这52个错误仍然存在,在工具-> NuGet包管理器->管理解决方案的NuGet包中,解决方案上没有安装任何东西,我最近更新了我的VS2017到15.5.4


当前回答

使用VSTS时,检查全局。json文件。我输入的sdk版本只是“2.2”,这导致了一个解析错误(但在本地构建时没有)。添加完整版本后,“2.2.104”解决了这个问题。

其他回答

在我的例子中,错误是GIT存储库。它的名称中有空格,使我的项目无法恢复

如果这是您的问题,只需在克隆时重命名GIT存储库

git clone http://Your%20Project%20With%20Spaces newprojectname

在我的案例中,我遇到了可用包源的问题。我已经将本地nuget存储库文件夹移动到一个新的路径,但我没有在nuget可用包源中更新它。当我纠正了路径问题,更新它在可用的包源之后,一切(nuget restor等)都工作正常。

要修复工具> NuGet包管理器>包管理器控制台中的此错误,只需运行:

dotnet restore

出现此错误是因为dotnet cli最初没有创建所需的所有文件。执行dotnet还原会添加所需的文件。

我没有任何NuGet在我的CLI/ c++。VS2022建造良好。然而,MSBuild不工作,给我错误NETSDK1004:资产文件…obj \ project.assets。Json没有找到。运行NuGet包还原生成此文件。

我的问题的解决方案是从vcxproj文件中删除以下内容。

<EnableManagedPackageReferenceSupport>true</EnableManagedPackageReferenceSupport>

我想把真改成假可能有用。我删除了行和MSBuild现在工作。

在Azure DevOps中,当我在构建管道中设置“Visual Studio Build”任务来构建我的解决方案中的单个项目,而不是整个解决方案时,我在这个错误上浪费了几个小时。

这样做意味着DevOps要么不构建任何(或者可能是一些,我不确定是哪个)您构建的目标项目所引用的项目,因此这些项目不会生成它们的project.json.asset文件,这就导致了这个问题。

我的解决方案是从使用VS Build任务切换到MSBuild任务。为单个项目使用MSBuild任务可以正确地构建您正在构建的项目引用的任何项目,并消除此错误。