Я играю с проектом Flex 4 / Air 2, который загружает модули во время выполнения.Я могу включить в свой модуль встроенные классы MX, и все работает нормально (например, import mx.controls.Alert).
Я также могу включить свои собственные классы - однако только если класс находится вта же папка, что и у модуля.
например:
<?xml version="1.0"?>
<mx:Module>
<mx:Script>
<![CDATA[
import mx.controls.Alert; // works
//import MyTestClass; // works if MyTestClass.as is in same folder as module
//import Classes.MyTestClass; // throws compiler error
]]>
</mx:Script>
</mx:Module>
Структура папки:
.
|-- Classes
|-- MyTestClass.as
|-- Modules
|-- MyModule.mxml
`-- application.mxml
Итак, когда я пытаюсь скомпилировать мой модуль при импорте "Classes.MyTestClass ", компилятор выдает следующую ошибку:
« Ошибка: определение классов: MyClass не найден »
Я знаю, что путь к классуЭто правильно, и если я скомпилирую проект как приложение, а не как модуль, все будет AOK.
Кроме того, если я импортирую «Classes.MyTestClass» в родительское приложение, все в порядке.Поэтому я предполагаю, что мне не хватает опции компилятора для включения этих классов в модуль, но я понятия не имею, что!Вот как я собираю модуль:
mxmlc -static-link-runtime-shared-library = true -load-externs = .. / obj / exclude.xml -isolate-styles = false../src/Modules/MyModule.mxml
"../ obj / exclude.xml" - это отчет о ссылках из приложения "Родитель".
Может ли кто-нибудь помочь какк чему я скучаю?