本文适用于:✔️ .NET Core 2.1.100 SDK 及更高版本
NuGet 在“obj”文件夹中写入名为 project.assets.json 的文件,.NET SDK 使用该文件来获取有关要传递到编译器的包的信息 。 如果在生成过程中找不到资产文件 project.assets.json,则会发生此错误。 完整的错误消息类似于以下示例:
NETSDK1004:找不到资产文件“C:\path\to\project.assets.json”。 运行 NuGet 包还原以生成此文件。
下面是一些可能导致此错误的原因:
你正在从包含
%
字符的目录路径运行
dotnet build
命令。 若要解决此错误,请从文件夹名称中删除
%
,然后重新运行
dotnet build
。
项目系统不会自动检测和还原对项目文件的更改。 若要解决此错误,请打开命令提示符并对项目运行
dotnet restore
。
一个项目由更早版本的 Nuget.exe 单独还原。 若要解决此错误,请打开命令提示符并对项目运行
dotnet restore
。
之前的错误,如 NETSDK1045(正在使用的 SDK 版本不支持项目的目标框架),会阻止 NuGet 创建项目资产文件。 若要解决 NETSDK1004 错误,请解决以前的错误,然后对该项目运行
dotnet restore
。
App Center CI 正在生成一个项目,该项目具有不在 NuGet 中的外部程序集。 若要解决此错误,请对程序集使用 NuGet 包。
你在 Visual Studio 中添加了一个名称开头是句点的解决方案文件夹。 若要解决此错误,请删除文件夹名称中的前导句点。
你在 NuGet.Config 文件的
<packageSources>
部分有一个源,其路径并不存在。 若要解决此错误,请编辑 NuGet.Config 文件以更正包源路径。