![]() |
проблема с именем класса
При проверке внешенего файла-класса - выдает ошибку, что класс с таким именем уже загружен - короче, конфликт имен. Но такого класса больше нет!
Я вношу в класс изменения, компилю весь проект, а он работает по старому, то есть, какбы где-то у него таки этот класс сидит...Вот где?! Подскажите пожалуйста, в чем может быть дело? |
Удали ASO файлы (есть пункт в меню).
|
Спасибо. А в каком меню???
|
Флеша.
|
пункта в меню не нашел...но просто удалил папку с ASO файлами. не помогло
|
Тогда смотри, может забыл прописать новый класс для мувиклипа.
|
Да ему вообще по-моему не важно, что у меня где прописано, он пишет
"The name of this class, 'ClassicTileBuilder', conflicts with the name of another class that was loaded, 'ClassicTileBuilder'" и так для кучи классов. дали проект подправить, выслали кучу файлов - а там такие лажы тварятся... |
Перемести проект в другую папку.
|
пробывал тоже.
на разных форумах нашел подобные проблемы, но предлагаемые способа - перевести время, очистить асо-кеш не помогают. Как сказал, я не сам создавал проект, и у меня вообще таких файлов не было, но получил на доработку и сразу не могу перекомпилить... |
Ну тогда мне сложно чем-либо помочь.
|
спасибо
|
здесь порылся - еще увидел, что проблема может быть в том, что имя одного класса встречается в именах всех других, которые не компилятся. Может дело в этом. Но тогда возникает вопрос, почему у заказчика компилился??? (я так думаю...)
Это попробую - отпишу. если Кто еще что скажет буду признателен. |
Возможно, не прописаны какие-то пути к классам. А если есть классы с теми же именами, то их нужно убрать.
|
да не, все в одной папке и названия вооще разные, но как говорил одно наследует другое. например - Tile, TileSet, TileBuilder,ClassicTileBuilder. Посидел поменял, чтобы такого наследства не было - не помогает.
Кроме того в классах есть взаимные ссылки - читал, что в этом тоже может быть проблема. Но устранять как кажется слишком сложно, и у заказчика же както компилился... |
так и есть. проблема, по-видимому, во взаимных ссылках. все классы кроме одного очистил - и он компилиться нормально. переделывать всю систему конечно буду вряд ли. Вопрос тот же остается, как он у прежнего разработчика компилился...
|
У него и надо спросить, собственно.
|
его нет... то есть он не доступен. отписал заказчику - узнал это. написал о проблему, думал заберет проект да и дело с концом. а нет! предложил увеличить бюджет, лишь бы заказ сделал. вот и думай... хоть всю структуру классов меняй!
Тут еще одна мысль мне лезет в голову. я всегда работаю во флеше 7, 8. может прежний разработчик работал в другой среде... а вот в какой? да я и не знаю больше ниче... |
Возможно, он компилировал mtasc-ом.
|
а где можно взять??
|
mtasc.org
|
скачал. стараюсь научиться его юзать, что-то видно не правильно где-то пишу, потому что после запуска "compile.bat" дает сообщение:
"mtasc.exe не является пвнутренний или внешней командой, мсполняемой программой или пакетным файлом" в переменных среды прописал имя: mtasc.exe значение: C:\Program Files\mtasc\mtasc.exe вот содержимое батника: mtasc.exe TileSet.as TileClass.as TileBuilderClass.as SquareTileBuilder.as GamesList.as GameConfiguration.as Game.as EnterYourName.as Clock.as ClassicTileBuilder.as Board.as BirdTileBuilder.as ArlequinTileBuilder.as -swf Jigsaw.swf pause |
Адрес должен быть C:\Progra~1\…
А вообще, проект должен быть скомпилирован сначала в самой IDE :D |
Все работает. То есть при компиляции тех классов та ошибка выдается все равно, но компилятор всего проекта работает нормально. Ошибку нужно просто игнорировать...Это установлено.
Благодарю за участие в обсуждении. Узнал кучу всего нового. |
Глюки Flash-компиллера - это вообще тема для отдельного разговора. Вот вчера столкнулся.
В классе объявлены следующие свойства: Код:
// Контейнер для всего загрузчика.Код:
/**Код:
description_txt = container_mc.createTextField("description", 1, 0, 20, 0, 0); |
Бармалей, а ты под какую версию компилишь-то? :)
Цитата:
|
Упс... А в чем логика подобного решения?
|
Цитата:
|
Мда... Век живи - век учись.
|
все совсем ясно (конечно кроме ошибок компилятора). Предыдущий разработчик использовал среду - FlashDevelop.
|
Цитата:
|
аналогично..
не совсем в тему: проблему очистки ASO при запуске компиляции в Flash IDE из FlashDevelop решил пока только так: в команде запуска IDE прописано только удаление ASO : т.е. активируется IDE и удалются ASO файлы, потом вручную запускаю тест/паблиш.. а зачем: а потому как если в в той же команде FlashDevelop прописать и запуск test movie, то ASO файлы не успевают удалится и компиляция идет с этой б..ой ошибкой если у кого есть более складные решения, поделитесь, плиз.. |
Силин, а ты часто ASO удаляешь? У меня такая потребность... ну может раз в неделю возникает. И я ни когда test movie из FD не запускаю, всегда на флеш переключаюсь.
|
да так получается что все в классах: т.е. каждый раз приходится.., почему и спрашиваю..
уж больно удобно в FlashDevelop все к слову , много чего можно было бы и через #include просто вставлять, но все сказочные фичи FlashDevelop напрочь отрубаются для неклассового кода, может ты где встречал решение этой заморочки ? зы: авторы FlashDevelop на эту тему говорят: сделаем скоро (может быть..), но лучше не дурите, а пишите в классах'' |
А я и пишу все в классах, но проблемы которые требуют чистки ASO у меня возникают довольно редко.
|
везет..:)
Nirth тут про критические дни Flash'a говорил в каком-то топике, очень похоже.., кто б раскопал корень этих бед.. а то либо спотыкаешься об этот алерт про конфликт классов, либо компилишь со вчерашнем кодом, либо извращаешься с этим delete ASO files.., причем у всех по разному: угнетает слегка эта неясность.. |
Про критические дни я говорил :D
Впрочем, проблему это не решает, конечно… |
ой сори, обознался/запамятовал..
но как сказал .. |
| Часовой пояс GMT +4, время: 19:47. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.