HaxeDevelop调试不会在断点处停止

时间:2019-04-08 21:08:24

标签: haxe flashdevelop

我是HaxeDevelop的新手(但是有FlashDevelop的经验),并且基本上没有有用的文档,我无法通过Google搜索找到。我正在尝试建立一个简单的应用程序并与OpenFL和Starling一起运行。它有一个问题,所以我尝试设置一个断点。但是,它不会在断点处停止。我什至在主类代码中添加了几个断点,而且它不会停止。我什至尝试制作一个只有主类和虚拟类的新项目,并且在这方面也不会断点。我是否必须告诉它使用特殊的调试过程?我还需要安装其他软件吗?我应该只使用VS Code吗?

我安装了HaxeDevelop,haxe和石灰以及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进行了尝试,但它们都不会在断点处停止。

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

2 个答案:

答案 0 :(得分:5)

HaxeDevelop / FlashDevelop仅在Flash目标上支持断点调试。设置起来可能有些棘手,因为PATH中需要包含32位Java(VSCode中的Flash调试不存在此限制)。您还需要确保Flash Debug Player与.swf文件相关联。您可以找到更多详细信息herehere


另一方面,

VSCode支持调试much wider range of targets

  • JavaScript
  • HashLink
  • HXCPP
  • 评估(宏)
  • Flash

在任何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扩展会打开一个弹出窗口,提示您进行安装。

答案 1 :(得分:0)

如果使用HaxeDevelop并以JavaScript为目标,则可以进行调试(将PIDKey添加到HXML或选择“ debug”下拉菜单),它提供了源映射。然后,您可以使用浏览器devtools(F12)并逐步浏览所有Haxe代码。

您可以使用-debug在代码中轻松放置debugger语句,以在该位置放置“断点”。从那里,您也可以开始迈步。

这不是HaxeDevelop特有的,但是在使用HaxeDevelop + JavaScript目标时效果很好。

image

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