PDA

Просмотр полной версии : static public const в сети становится undefined


marat_sa
12.11.2009, 16:23
Есть файл с константами Constants, основное содержание которого константы для проекта - всякие строковые и числовые типы данных.

public static const WINDOW_TYPE_BUY_CAP:String = windowTypeBuyCap";

При локальном запуске все работает, выкладываю в сеть - не работает. Начал капАть - протрейсил значение этой константы - undefined. КАК ТАК?! Ограничение какое-то стоит что ли на что-то?
Именно при работе приложения в сети... :(

Psycho Tiger
12.11.2009, 17:15
А как протресил в сети?

etc
12.11.2009, 19:46
Скорее всего класс с константами находится в нескольких swf-ках, одна из которых загружает приложение, например. И в этом загрузчике, например, старое значение константы или вообще отсутствует.

marat_sa
12.11.2009, 21:47
2 Psycho Tiger
Ну собственно приложение сетевое, запускаю я его только без прелоадера локально через заглушку... А когда выложил в сеть - нашел такую беду.

2 etc
Нет, данный класс уникален в рамках всего проекта и пересечение имен переменных нет. Тем более пробовал переименовать ее - такая же трабла. Интересно, что другие константы нормально инициализируются. Просто в один прекрасный момент - Бах и все(

Я тут подумал... Вот есть ограничения на лимит байт-кода класса, но тогда при компиляции по идее компилятор должен кидать варнинг, типа нужно отсплитить такой-то класс. А может есть ограничения на статиковские члены или константы? Никто не слышал про такое?

Добавлено через 11 часов 43 минуты
Решение оказалось тривиальным - тупо разбил файл Constants на несколько Enum'ов.
Обидно, что ни компилятор, ни FP не ругнулись(
Отсюда вывод - большие классы - зло.