Отладка приложений среды выполнения OpenLaszlo SWF и классов Laszlo Foundation (LFC) с помощью Flash Builder

Я только что научился профилировать приложения OpenLaszlo с помощью Flash Builder. Подход, упомянутый в этом обсуждении, означает, что приложение OpenLaszlo компилируется в SWF-файл с включенной опцией отладки для компилятора Flex. Затем сгенерированный SWF-файл можно профилировать с помощью Flash Builder.

Было бы намного эффективнее, если бы мы могли использовать всю мощь отладчика Flash Builder для отладки исполняемого приложения OpenLaszlo SWF11. Я специально ищу способ

  1. иметь возможность устанавливать точки останова в сгенерированном коде ActionScript 3 моего приложения (кросс-скомпилированный код LZX) и выполнять пошаговое выполнение кода.
  2. Возможность пошагово использовать методы классов Laszlo Foundation, особенно ядро ​​времени выполнения SWF.

Поскольку сообщения об ошибках, доставляемые компилятором OpenLaszlo, не всегда так полезны, для разработчика, знающего ActionScript 3, было бы гораздо эффективнее иметь возможность выполнять пошаговое выполнение кода ActionScript напрямую, проверяя объекты и переменные в Flash Builder.

Для достижения этих целей необходимо:

  1. Есть способ сгенерировать код ActionScript 3 из кода LZX моего приложения.
  2. Имейте доступ к сгенерированному коду ActionScript 3, который используется для компиляции файла библиотеки LFC SWC $ LPS_HOME / lps / includes / lfc / LFC11.swc. Код ActionScript должен быть сгенерирован как часть процесса сборки OpenLaszlo Subversion. К сожалению, я недостаточно хорошо понимаю процесс сборки, чтобы увидеть, где и как генерируется исходный код LFC.

Кто-нибудь смог отладить и пройти через код ActionScript3 приложения и классы LFC?


person Community    schedule 16.08.2012    source источник


Ответы (2)


Я создал проект на Github, содержащий сценарий сборки Ant и необходимые файлы. для профилирования и отладки приложения OpenLaszlo с помощью Flash Builder 4.6 в Windows или Mac.

Вот скриншот приложения OpenLaszlo, запущенного в профилировщике:

Приложение OpenLaszlo, работающее в профилировщике Flash Builder

Файлы проекта содержат PDF-файл с подробным руководством, показывающим, как отлаживать и профилировать приложения среды выполнения OpenLaszlo SWF11, включая классы SWF11 LFC. Вот ссылка на документ под названием «Профилирование приложений OpenLaszlo с помощью Flash Builder» .

person raju-bitter    schedule 04.09.2012

Возможно и то, и другое. Получить сгенерированный исходный код ActionScript3 вашего приложения OpenLaszlo относительно легко. Когда компилятор OpenLaszlo компилирует код LZX, сгенерированный код ActionScript 3 приложения записывается во временную папку Java.

То же самое верно, когда классы LFC среды выполнения SWF компилируются в файлы SWC. Исходный код OpenLaszlo (при выполнении сборки Subversion) содержит сценарий оболочки, который используется для компиляции файлов SWC . Если вы проверили код, сценарий сборки можно найти в

$LPS_HOME/WEB-INF/lps/lfc/

Для ветви flex4.6, если вы выполните команду

cd $LPS_HOME/WEB-INF/lps/lfc/; ./buildlfc --runtime=swf11

вы найдете сгенерированные классы ActionScript в вашей Java или системной временной папке, например

/tmp/lzswf9/lzgen6382925936717905460/

в моей системе Linux. Если вы очистите папку / tmp / lzswf9 перед запуском сценария оболочки, вы должны увидеть только одну подпапку, начинающуюся с букв lzgen * в этой папке, содержащую все классы ActionScript, которые скомпилированы в файл SWC.

Вся эта операция относительно сложна, я давно создал JIRA и предложил поставить сервер OpenLaszlo для исходного кода ActionScript3 для файлов библиотеки LFC / ядра SWC: http://jira.openlaszlo.org/jira/browse/LPP-9424

К сожалению, это так и не было реализовано.

person raju-bitter    schedule 16.08.2012
comment
Можно ли каким-то образом автоматизировать процесс? Например: обновить файл LZX, скомпилировать с помощью браузера, а затем открыть приложение для отладки с помощью Flash Builder? - person ; 16.08.2012
comment
Раньше я делал это с помощью скриптов сборки Apache Ant (когда я работал над приложениями Adobe AIR для Android на основе OpenLaszlo). Я прослежу, чтобы я обновил некоторые из этих сценариев сборки и сделал их доступными в Интернете. - person raju-bitter; 16.08.2012