HaxeDevelop调试不会在断点上停止

问题描述 投票:2回答:2

我是HaxeDevelop的新手(但对FlashDevelop很有经验),它基本上没有我通过谷歌搜索找到的有用文档。我正在尝试使用OpenFL和Starling运行一个简单的应用程序。它有一个问题,所以我尝试了一个断点。但是,它不会在断点处停止。我甚至在主类代码中放了几个断点,它不会停止。我甚至尝试用一个主类和一个虚拟类来创建一个新项目,它也不会断点。我是否必须告诉它使用特殊的调试过程?我是否需要安装更多软件?我应该只使用VS Code吗?

我安装了HaxeDevelop和haxe,lime和OpenFL。我创建了一个新的OpenFL项目并在Main文件中做了一些简单的工作(制作一些整数变量,打印一些东西等)并用断点填充它。我运行它并输出打印(但不会在任何断点处停止):

Build succeeded
Done(0)
haxelib run lime run "project.xml" neko -debug
Running process: C:\HaxeToolkit\haxe\haxelib.exe run lime run "project.xml" neko -debug
Main.hx:17: Hello World!
Main.hx:21: Did some stuff... Did it stop?
Done(0)

我已经尝试过使用neko,html5和flash,但没有一个会在断点处停止。

如果有人知道在HaxeDevelop,FlashDevelop或VS Code中让Haxe以调试模式运行的好教程,我会非常感激。

haxe flashdevelop
2个回答
5
投票

HaxeDevelop / FlashDevelop仅支持Flash目标上的断点调试。设置起来可能有点棘手,因为它需要在您的PATH中使用32位Java(VSCode中的Flash调试不存在此限制)。您还需要确保Flash调试播放器与.swf文件相关联。你可以找到更多细节herehere


另一方面,VSCode支持调试much wider range of targets

  • JavaScript的
  • Hashlink
  • HXCPP
  • Eval(宏)

在任何IDE中都没有针对Neko目标的调试支持。

如果您使用的是OpenFL,则应安装Lime extension,它会为您处理各个调试适配器的所有配置(注意:这需要Lime 7.3.0或更高版本)。在一个新项目中,只需“开始调试”并从下拉列表中选择“Lime”:

这将在.vscode/launch.json中创建Lime启动配置:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Lime",
            "type": "lime",
            "request": "launch"
        }
    ]
}

调试现在应该与当前选定的目标一起开箱即用(只需确保选择了目标的“调试”配置)。您可以单击状态栏指示器以在配置之间切换:

如果您缺少调试扩展,Lime扩展应该打开一个提供安装它的弹出窗口。


0
投票

如果您使用HaxeDevelop并定位JavaScript,您可以进行调试构建(将-debug添加到您的HXML或选择'debug'下拉列表),它提供源映射。然后你可以使用浏览器devtools(F12)并逐步浏览所有Haxe代码。

您可以使用debugger在代码中轻松放置js.Lib.debug()语句,在此位置放置“断点”。从那里你也可以开始踩踏。

这不是特定于HaxeDevelop,但在使用HaxeDevelop + JavaScript目标时效果非常好。

https://haxe.org/manual/debugging-javascript.html

© www.soinside.com 2019 - 2024. All rights reserved.