Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 26.02.2009, 15:31
Smrad вне форума Посмотреть профиль Отправить личное сообщение для Smrad Найти все сообщения от Smrad
  № 1  
Ответить с цитированием
Smrad

Регистрация: Nov 2008
Сообщений: 205
Отправить сообщение для Smrad с помощью ICQ
По умолчанию Странные ошибки при работе со вспомогательными классами.

Код AS3:
package TestPackage 
{
	import Entity.StatableObject;
	public class Test extends StatableObject
	{
	}
}
 
import flash.display.MovieClip;
class ProblemClass1 extends MovieClip
{
}
class ProblemClass2 extends MovieClip
{
}
Такой код порождает ошибку "VerifyError: Error #1014: Не удалось найти класс Entity::StatableObject". Причем, как ни странно, дело в двух вспомогательных классах ProblemClass1 и ProblemClass2, а конкретнее в том, что они имеют один базовый класс MovieClip. Дело даже не в MovieClip'е а в том, что ProblemClass1 и ProblemClass2 имеют одинаковую базу. Т.е. если базовые классы ProblemClass1 и ProblemClass2 различные ошибки нет, иначе есть.

Кто-нибудь сталкивался с подобным?

Старый 26.02.2009, 15:57
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 2  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Да, сталкивался: 1. перед каждым новым классом нужно писать его импорты, но это тоже не всегда помогает. 2. можно попробовать их не в internal а в какой-нибудь другой неймспейс положить
Вы бы еще больше заглавных букв напихали в разные неподходящие места - вас бы еще тяжелее понять было бы.
__________________
Hell is the possibility of sanity

Старый 26.02.2009, 16:53
Smrad вне форума Посмотреть профиль Отправить личное сообщение для Smrad Найти все сообщения от Smrad
  № 3  
Ответить с цитированием
Smrad

Регистрация: Nov 2008
Сообщений: 205
Отправить сообщение для Smrad с помощью ICQ
Цитата:
Сообщение от wvxvw Посмотреть сообщение
Да, сталкивался: 1. перед каждым новым классом нужно писать его импорты, но это тоже не всегда помогает. 2. можно попробовать их не в internal а в какой-нибудь другой неймспейс положить
Вы бы еще больше заглавных букв напихали в разные неподходящие места - вас бы еще тяжелее понять было бы.
Ни первое, ни второе, ни первое и второе не помогает , видимо, придется плодить файлы.

Старый 26.02.2009, 17:14
cleptoman вне форума Посмотреть профиль Отправить личное сообщение для cleptoman Найти все сообщения от cleptoman
  № 4  
Ответить с цитированием
cleptoman
 
Аватар для cleptoman

блогер
Регистрация: Mar 2007
Сообщений: 1,291
Записей в блоге: 5
Отправить сообщение для cleptoman с помощью ICQ
у меня все работает.. думается мне, что просто не находит Entity.StatableObject для импорта
__________________
http://cleptoman.free-lance.ru
achivements: дважды благословлен на воровство. осеяный благодатью

Старый 26.02.2009, 18:32
Smrad вне форума Посмотреть профиль Отправить личное сообщение для Smrad Найти все сообщения от Smrad
  № 5  
Ответить с цитированием
Smrad

Регистрация: Nov 2008
Сообщений: 205
Отправить сообщение для Smrad с помощью ICQ
Цитата:
Сообщение от cleptoman Посмотреть сообщение
у меня все работает.. думается мне, что просто не находит Entity.StatableObject для импорта
Да всё там находит см. строку import Entity.StatableObject;
Если свойство типа TestPackage.Test нигде не объявлять, то ошибки само собой не будет.

Старый 26.02.2009, 19:00
cleptoman вне форума Посмотреть профиль Отправить личное сообщение для cleptoman Найти все сообщения от cleptoman
  № 6  
Ответить с цитированием
cleptoman
 
Аватар для cleptoman

блогер
Регистрация: Mar 2007
Сообщений: 1,291
Записей в блоге: 5
Отправить сообщение для cleptoman с помощью ICQ
Код AS3:
package {
	import flash.display.Sprite;
	public class Test extends Sprite{
		public function Test(){
			var test:Test2 = new Test2();
			var test2:Test3 = new Test3();
		}
	}
 
}
import flash.display.Sprite;
class Test2 extends Sprite{
	function Test2(){
		trace("yo");
	}
}
 
class Test3 extends Sprite{
	function Test3(){
		trace("yo2");
	}
}
вот что у меня работает

"Да всё там находит см. строку import Entity.StatableObject"
это далеко не факт, что находит.
__________________
http://cleptoman.free-lance.ru
achivements: дважды благословлен на воровство. осеяный благодатью

Старый 27.02.2009, 10:46
Smrad вне форума Посмотреть профиль Отправить личное сообщение для Smrad Найти все сообщения от Smrad
  № 7  
Ответить с цитированием
Smrad

Регистрация: Nov 2008
Сообщений: 205
Отправить сообщение для Smrad с помощью ICQ
Ну так код-то другой. Попробуйте пронаследовать Test от NewPackage::NewClass, где NewClass будет потомком MovieClip'а и получите ошибку "Не удалось найти класс NewPackage::NewClass.".
Видимо дело всё-таки в потрохах флеша, каких-то внутренних связях и т.п.

Старый 27.02.2009, 18:00
Яски вне форума Посмотреть профиль Отправить личное сообщение для Яски Найти все сообщения от Яски
  № 8  
Ответить с цитированием
Яски

блогер
Регистрация: May 2008
Адрес: (0, 10, 185) в локальной системе
Сообщений: 721
Записей в блоге: 6
Вы знаете, что класс Entity.StatableObject должен быть описан в файле, расположенном в папке Entity, в файле StatableObject.as и в классе StatableObject должен быть прописан package с именем Entity.

Старый 27.02.2009, 19:04
Smrad вне форума Посмотреть профиль Отправить личное сообщение для Smrad Найти все сообщения от Smrad
  № 9  
Ответить с цитированием
Smrad

Регистрация: Nov 2008
Сообщений: 205
Отправить сообщение для Smrad с помощью ICQ
Цитата:
Сообщение от Яски Посмотреть сообщение
Вы знаете, что класс Entity.StatableObject должен быть описан в файле, расположенном в папке Entity, в файле StatableObject.as и в классе StatableObject должен быть прописан package с именем Entity.
Знаю.

Создать новую тему Ответ Часовой пояс GMT +4, время: 19:33.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 19:33.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.