使用VsCode调试UE5的PuerTs

1、下载测试的Demo项目

配置PuerTs的步骤这里不赘述。

2、准备工作

2.1 打开项目

正常来说,直接打开项目可以看到如下画面



如果直接点击运行,可以发现下方的 Output Log 窗口已经开始 Print 了很多案例。

是因为该项目默认执行的是QuickStart.ts。

2.2 打开TsGameInstance.cpp

3、添加VsCode断点

3.1 在VsCode找到QuickStart.ts,随便断一个点

(这里我们以 L17 为例)

4、 修改虚拟机端口 (8889)

(如果不知虚拟机的用途,可以查看ZombieYang大佬的推文

回到TsGameInstance.cpp中

将 注释的代码 取消注释



图片过长,目前代码如下:

void UTsGameInstance::OnStart()
{
//GameScript = MakeShared<puerts::FJsEnv>();
GameScript = MakeShared<puerts::FJsEnv>(std::make_unique<puerts::DefaultJSModuleLoader>(TEXT("JavaScript")), std::make_shared<puerts::FDefaultLogger>(), 8889);
GameScript->WaitDebugger();
TArray<TPair<FString, UObject*>> Arguments;
Arguments.Add(TPair<FString, UObject*>(TEXT("GameInstance"), this));
GameScript->Start("QuickStart", Arguments);
}

注意看修改后的代码。我这里已经将端口更改为 " 8889 "

同时打开了WaitDebugger(),目的是Client等待V8的虚拟机(Client和V8虚拟机的关系同样可以查看ZombieYang大佬的推文

5、添加VsCode配置

5.1 打开VsCode的Debug配置

5.2 选择 Node.js : Attach

5.3 更改端口为 (8889)

6、开始Debug

6.1 启动VsCode待命

①首先选择5.2添加的Debug配置



②点击左侧绿色 三角形

可以看到如下示意框

6.2 启动2.1的项目

不出意外已经成功被中断。

7、 尽情Debug~

参考:

[UE] 1.64.2的VSCode无法断点调试TS

Puerts Inspector指南(一)在UE4和Unity里调试Javascript

使用VsCode调试UE5的PuerTs的更多相关文章

  1. VSCode调试go

    VSCode调试go语言出现:exec: "gcc": executable file not found in %PATH%   1.问题描述 由于安装VS15 Preview ...

  2. 【转】vscode调试运行c#详细操作过程

    [转]vscode调试运行c#详细操作过程 主要命令: //路径跳转cd //新建项目dotnet new console -o 路径 //运行dotnet run //用于发布exe<Runt ...

  3. Vscode调试C的多文件工程配置

    关于Vscode的C语言的单文件调试,可以参见VScode调试C语言的设置(win10,Linux),里面已经说明基本的配置和使用. 下面说明一下如何调试多个文件的工程,首先写一个简单的工程,其中工程 ...

  4. vscode 调试node.js

    在开发的过程中,几乎不可能一次性就能写出毫无破绽的程序,断点调试代码是一个普遍的需求. 作为前端开发工程师,以往我们开发的JavaScript程序都运行在浏览器端,利用Chrome提供的开发者工具就可 ...

  5. 使用VSCode调试单个PHP文件

    突然发现是可以使用 VSCode 调试单个 PHP 文件的,今天之前一直没有弄成功,还以为 VSCode 是不能调试单文件呢.这里记录一下今天这个"突然发现"的过程. 开始,是在看 ...

  6. vscode调试js,安装了nodejs之后还出现无法在Path上找到运行时的node

    vscode 调试js,安装了nodejs之后还出现无法在Path上找到运行时的node. 重启vscode解决

  7. Vscode 调试 C 语言时数组值无法显示的问题

    使用 Vscode 的 Gdb 扩展调试 C 语言时,发现数组变量在 变量列表里面中显示为指针,且只显示为其第一个元素的值,无法看到所有元素的值. 如图所示: 解决: 假设有一个元素个数为10的数组v ...

  8. vscode调试pomelo和pomelo使用vscode调试

    使用vscode 通过端口remote attach进行调试 pomelo. 0. 网上好多调试pomelo的都是webstorm.或者vscode调试node的教程.但没找到vscode调试pome ...

  9. vscode调试html文件

    1. vscode调试html文件 1.1. 使用Debugger for Chrome进行调试 1.1.1. 基于本地file配置方式调试 1.1.2. 基于服务端配置方式调试 1.1.2.1. 启 ...

随机推荐

  1. kubernetes网络排错思想

    Overview 本文将引入一个思路:"在Kubernetes集群发生网络异常时如何排查".文章将引入Kubernetes 集群中网络排查的思路,包含网络异常模型,常用工具,并且提 ...

  2. HCNP Routing&Switching之MAC安全

    前文我们了解了GRE over IPSec 相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16601491.html:今天我们来聊一聊mac安全相关话 ...

  3. Shell第三章《for循环》

    Shell循环:for 语法结构: for 变量名 [ in 取值列表 ] do 循环体 done 需求:自动创建10个用户 #!/bin/bash read -p "请输入你要创建的用户名 ...

  4. HDU 5362 Just A String 指数型母函数

    题面 Description 用m种字母构造一个长度为n的字符串,如果一个字符串的字母重组后可以形成一个回文串则该串合法,问随机构成的长为n的字符串的合法子串数目期望值. Input 第一行一整数T表 ...

  5. 从0到1写一款自动为Markdown标题添加序号的Jetbrains插件

    1. markdown-index 最近做了一个Jetbrains的插件,叫markdown-index,它的作用是为Markdown文档的标题自动添加序号,效果如下: 目前已经可以在Jetbrain ...

  6. Python入门系列(六)一篇学会python函数

    函数 函数是只在调用时运行的代码块. def my_function(): print("Hello from a function") my_function() 信息可以作为参 ...

  7. lombok Builder注解

    使用了@Builder 将会失去无参构造函数 可以通过 @Tolerate 来添加构造函数

  8. 【Git进阶】基于文件(夹)拆分大PR

    背景 前段时间为了迁移一个旧服务到新项目,由此产生了一个巨大的PR,为了方便Code Review,最终基于文件夹,将其拆分成了多个较小的PR:现在这里记录下,后面可能还会需要. 演示 为了方便演示, ...

  9. Java 9.回文数

    给你一个整数 x ,如果 x 是一个回文整数,返回 true :否则,返回 false .回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数.    例如,121 是回文,而 123 不是. ...

  10. golang 实现笛卡尔积(泛型)

    背景 input: [[a,b],[c],[d,e]] output: [[a,c,d],[a,c,e],[b,c,d],[b,c,e]] 思路:分治 预处理第一项:[a,b] -> [[a], ...