Отладка HaxeDevelop не останавливается на точке останова - PullRequest
4 голосов
/ 09 апреля 2019

Я новичок в HaxeDevelop (но имел опыт работы с FlashDevelop), и у него практически нет полезной документации, которую я могу найти с помощью поиска Google. Я пытаюсь запустить простое приложение с помощью OpenFL и Starling. У него была проблема, поэтому я попытался установить точку останова. Тем не менее, это не останавливается на точке останова. Я даже поставил несколько точек останова в коде основного класса, и он не остановится. Я даже пытался создать новый проект только с основным классом и фиктивным классом, и это тоже не остановит работу. Должен ли я сказать ему использовать специальный процесс отладки или что-то? Нужно ли устанавливать еще программное обеспечение? Должен ли я просто использовать VS Code?

Я установил HaxeDevelop и haxe and lime и OpenFL. Я сделал новый проект OpenFL и выполнил простую работу в главном файле (сделал несколько целочисленных переменных, напечатал некоторые вещи и т. Д.) И замусорил его точками останова. Я запускаю его, и вывод печатает (но не останавливается ни на одной точке останова):

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 ]

6 голосов
/ 09 апреля 2019

HaxeDevelop / FlashDevelop поддерживает только отладку точек останова на цели Flash.Это может быть немного сложно настроить, поскольку для вашего PATH требуется 32-битная Java (это ограничение не существует при отладке Flash в VSCode).Также необходимо убедиться, что проигрыватель Flash Debug связан с файлами .swf.Вы можете найти более подробную информацию здесь и здесь .


С другой стороны, VSCode поддерживает отладку гораздо более широкого диапазона целей :

  • JavaScript
  • HashLink
  • HXCPP
  • Eval (макросы)
  • Flash

В любой среде IDE нет поддержки отладки для цели Neko.

Если вы используете OpenFL, вам следует установить расширение Lime , которое обрабатывает всю конфигурацию отдельных адаптеров отладки для вас. (примечание: для этого требуется Lime 7.3.0 или новее) .В новом проекте просто «Начать отладку» и выберите «Lime» из выпадающего списка:

Это создает конфигурацию запуска Lime в.vscode/launch.json:

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

Теперь отладка должна работать «из коробки» с выбранной в данный момент целью (просто убедитесь, что у вас выбрана конфигурация «Отладка» для выбранной цели).Вы можете щелкнуть индикатор строки состояния, чтобы переключаться между конфигурациями:

Если у вас отсутствует расширение отладки, расширение Lime должно открыть всплывающее окно с предложением установить его.

0 голосов
/ 17 мая 2019

Если вы используете HaxeDevelop и целевой JavaScript, вы можете сделать отладочную сборку (добавьте -debug к вашему HXML или выберите выпадающий список «отладка»), которая предоставляет исходные карты.Затем вы можете использовать браузеры devtools (F12) и пройти по всему коду Haxe.

Вы можете легко поместить операторы debugger в свой код, используя js.Lib.debug(), чтобы установить "точку останова" в этой позиции.Оттуда вы также можете начать пошаговое выполнение.

Это не относится к HaxeDevelop, но работает очень хорошо при использовании цели HaxeDevelop + JavaScript.

image

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

...