使用unreal engine5.3.2创建c++第一人称游戏

UE5系列文章目录

文章目录

前言

为了使用unreal engine5.3.2创建c++第一人称游戏,今天安装了Visual Studio 2022专业版。在ue5中创建c++工程,结果编译器报错:

严重性 代码 说明 项目 文件 行 禁止显示状态 详细信息

错误 NETSDK1004 找不到资产文件"D:\Program Files\Epic Games\UE_5.3\Engine\Source\Programs\Shared\EpicGames.OIDC\obj\project.assets.json"。运行 NuGet 包还原以生成此文件。 EpicGames.OIDC C:\Program Files\dotnet\sdk\8.0.204\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets 266

第一感觉是跟 :NuGet 有关系

一、NuGet 简介

微软的官方解释:

适用于任何现代开发平台的基本工具可充当一种机制,通过这种机制,开发人员可以创建、共享和使用有用的代码。 通常,此类代码捆绑到"包"中,其中包含编译的代码(如 DLL)以及在使用这些包的项目中所需的其他内容。

对于 .NET(包括 .NET Core),共享代码的 Microsoft 支持的机制则为 NuGet,其定义如何创建、托管和使用面向 .NET 的包,并针对每个角色提供适用工具。

简单来说,NuGet 包是具有 .nupkg 扩展的单个 ZIP 文件,此扩展包含编译代码 (Dll)、与该代码相关的其他文件以及描述性清单(包含包版本号等信息)。 使用代码的开发人员共享创建包,并将其发布到公用或专用主机。 包使用者从适合的主机获取这些包,将它们添加到项目,然后在其项目代码中调用包的功能。 随后,NuGet 自身负责处理所有中间详细信息。

由于 NuGet 支持公用 nuget.org 主机旁边的专用主机,因此,可以使用 NuGet 包来共享组织或工作组专用的代码。 此外,你还可以使用 NuGet 包作为一种便捷的方式,将自己的代码用于除你自己项目之外的任何其他项目。 简而言之,NuGet 包是可共享的代码单元,但不需要暗示任何特定的共享方式。

二、解决方法:

第一种方法:

在visual studio 2022中:Tools -> NuGet Package Manager -> Manage NuGet Packages for Solution

你可以尝试运行NuGet包还原来生成缺失的文件。在Visual Studio中,你可以通过右键点击解决方案资源管理器中的解决方案,然后选择"管理NuGet程序包",再点击"还原"按钮来还原NuGet包。
第二种方法:

如果第一种方法没解决使用下面的方法

如果你在命令行中操作,可以在"程序包管理控制台"界面中使用dotnet restore命令,然后回车,来还原NuGet包。

再次编译工程

相关推荐
zzzyyy5381 小时前
C++之vector容器
开发语言·c++
uotqwkn89469s3 小时前
如果Visual Studio不支持C++14,应该如何解决?
c++·ide·visual studio
2501_940094023 小时前
NDS模拟器安卓版 melonDS模拟器 汉化中文版 NDS BIOS和固件+NDS游戏和详细的使用教程
android·游戏
Maple_land4 小时前
Linux复习:冯·诺依曼体系下的计算机本质:存储分级与IO效率的底层逻辑
linux·运维·服务器·c++·centos
ue星空4 小时前
UE核心架构概念
网络·c++·ue5
ShineWinsu5 小时前
对于数据结构:堆的超详细保姆级解析——下(堆排序以及TOP-K问题)
c语言·数据结构·c++·算法·面试·二叉树·
ue星空6 小时前
AActor前面为什么要加A? UObject前面为什么要加U?
ue5
_OP_CHEN6 小时前
C++进阶:(五)map系列容器的全面解析
开发语言·c++·map·红黑树·stl容器·键值对·mapoj题
hetao17338376 小时前
ZYZ28-NOIP模拟赛-Round4 hetao1733837的record
c++·算法
大米粥哥哥6 小时前
c++ libcurl报错Send failed since rewinding of the data stream failed【已解决】
开发语言·c++·http·curl·rewind