Сгенерированные файлы BlazeDS приводят к сбою компилятора Flex - PullRequest
0 голосов
/ 07 февраля 2012

Я никогда раньше не работал с Flash / BlazeDS или Ant, поэтому извините, если это упрощенно.

У меня есть проект, для которого мне нужно разработать некоторый код Java.В проекте используются Flash и BlazeDS.Для первоначальной сборки проекта запускается скрипт Ant, который в конечном итоге запускается, как мне кажется, компилятором Flex (атрибут sdk указывает на каталог FlashBuilder 4 sdk/4.1.0).

<exec executable='"@{sdk}/bin/mxmlc.exe"' failonerror="true">
    //A bunch of <arg> tags
</exec>

Первоначально он выполнялсябез ошибок.

Я закончил настройку проекта, которая включала подключение к BlazeDS во FlashBuilder.Во время установки некоторые классы service и valueObject были обновлены (все начинаются с подчеркивания).Я считаю, что это только сгенерированные файлы, которые BlazeDS делает.

На данный момент все работает отлично.Однако, если я попытаюсь снова запустить сценарий сборки Ant, <exec> завершится неудачно со следующим выводом (я отключил информацию о компании).

Build error

Из того, что я читаю онлайн, код ошибки от Ant <exec> зависит от ОС.Я на машине с Windows 7 и обнаружил предполагаемые коды ошибок .Однако ошибки 35 не существует.

Кто-нибудь имеет представление о том, что это за ошибка и как ее исправить?У меня есть предположение, что, возможно, проблема заключается в том, что я использую FlashBuilder 4.5, а сгенерированные файлы BlazeDS создаются иначе.Я попытался обновить местоположение SDK, чтобы оно указывало на папки 4.5.0 и 4.5.1, но не повезло.

1 Ответ

2 голосов
/ 08 февраля 2012
  1. Почему бы не использовать FlexTask (Adobe предоставляет задачу Ant для переноса инструментов mxmlc, compc и asdoc)?Я могу понять это, когда добавленные библиотеки не приветствуются, но это своего рода стандарт для сборок AS3.

  2. Код ошибки возвращается из mxmlc, который, как вы правильно сделали,отмечен компилятор Adobe Flex.Однако код возврата от компилятора не имеет смысла.Вам нужен фактический вывод компилятора (он печатает вид ошибки и местоположение).Если вы не можете запустить компилятор нормально (так как вывод, который он производит, не игнорируется), вы можете потратить дни, пытаясь найти ошибку :) Если вы настаиваете на использовании задачи exec, тогда exec может перенаправить вывод программы в свойство или файл.Может быть, перенаправить его в свойство, а затем отобразить содержимое свойства?

  3. Зачем вам нужно генерировать код AS3 с помощью Blaze?У него очень плохой генератор кода.Написание одного из них на самом деле может быть лучше.

  4. Blaze не генерирует классы с подчеркиванием, если только исходные классы Java не имеют подчеркивания (довольно необычно).Классы с подчеркиванием чаще встречаются в коде, сгенерированном компилятором Flex для таких вещей, как встроенные ресурсы, встроенные компоненты MXML, некоторый другой код, сгенерированный Flash Builder и т. Д.

...