Создание модуля RobotLegs в приложении оболочки PureMVC - PullRequest
1 голос
/ 19 октября 2010

Я работаю над существующим модульным проектом, который был построен в PureMVC. Вместо того, чтобы конвертировать все в RobotLegs, я хочу создать новый модуль с использованием RobotLegs и вставить его в оболочку pureMVC. В настоящее время при загрузке модуля появляется следующая ошибка прошивки:

ReferenceError: Ошибка # 1065: переменная IMediatorMap не определена.

Изначально я думал, что это потому, что моему модулю был нужен медиатор pureMVC, чтобы вызвать StartupCommand pureMVC, чтобы все было «подключено» и ТО создавало контекст RobotLegs. Однако, это не сработало, и я все еще получаю ошибку. Ты хоть представляешь, что происходит, и если да, то как мне это пройти?

Спасибо.

Ответы [ 2 ]

1 голос
/ 19 октября 2010

Хорошо - я читал повсюду и пытался понять, в чем дело. В обсуждении поддержки RobotLegs была опубликована похожая тема. Оказалось, что в инфраструктуре RL была ошибка, связанная с ApplicationDomain. Читайте здесь:

http://knowledge.robotlegs.org/discussions/problems/160-child-applicationdomains-break-the-injector

Что ж, решением на этом посте было использование RL v.1.3.0, которым я был. Но, следуя этой мысли, я удалил ссылку на библиотеку SwiftSuspender-1.5.1.swc в папке lib / библиотеки RL и вместо этого загрузил SwiftSuspender из GitHub. Это также v.1.5.1, но по какой-то причине работает с GitHub. Я заменил тот, который шел с каркасом RL, на тот, что я получил от GitHub, и теперь он работает без ошибок .... пока.

Спасибо. :)

1 голос
/ 19 октября 2010

Я не верю, что ваша проблема связана с PureMVC или RobotLegs.Похоже, ваш модуль RobotLegs не содержит библиотеку RobotLegs и ваше основное приложение.Ваш модуль не связан с RobotLegs .swc.Если вы добавляете RobotLegs .swc в основное приложение, но никогда не используете его, классы не будут скомпилированы в приложение.Компиляторы mxmlc и Flash / Flex Builder не включают классы в SWF, которые не используются.

Чтобы решить эту проблему, можно принудительно включить всю библиотеку, используя параметр -include-library в главномприложение.Вы также можете изменить параметры ссылки в модуле на «Объединить в код», чтобы включить туда RobotLegs .swc.

...