Flex 2.0 - до ада и обратно
Вчера реших да отупам прахта от флашерските си умения, като дръпна макро… адобското чудо, наречено флекс (SDK версията, безплатна), с което мога да си компилирам ActionScript 3 файлове. Ростислав чат пат ми е показвал и разказвал за разни чудеса и занимания с компилатори за флаш, дори бях успял безпроблемно да компилирам едно проектче с MTASC преди време. Обаче вчера време не остана, и реших тази сутрин да си завърша заниманието, без да подозирам в какво ще се забъркам…
Три часа, едно студено кафе и една батерия на лаптопа по-късно фрустрацията ми нараства със всяка изминала минута. Имам чувството, че настъпих всички възможни мотики в опита си да компилирам едно просто hello-world. Ето и (съкратено) eпопеята, през която преминах.
- Разархивирам архива в program files. До тук добре.
- Пробвам да компилирам примерите. Оказва се, че там а) няма примери за as3, а само за декларативните им дефиниции (mxml), които за сега не ме интересуват.
- Бат файла директно ме отсвири че нямам джава. А аз имам някаква айбиемска.
- Търся гугъл. Намирам тази статия, която казва да викам java jar … леко съмнение обзе душата ми.
- Джавата тръгна, и ми каза, че нямало видиш ли такава директива - flexlib. Казва - пусни компилатора с хелп опция.
- Пускам. казва - напиши help {каквото} за повече информация.
- -help flexlib не намира нищо.
- Махам директивата въобще, почва да мрънка, че не можело да си намери flex-config.xml
- С чутовни гугъл усилия намирам някакъв френски форум, в който пичовете очевидно вървят по моите мотики.
- Очевидно далаверата с java -jar нещо не става.
- Отварям примерите, и виждам, че там компилират с exe, а не с jar така че явно това е пътя. Решавам да разбера защо аджеба не ми тръгва и на мен exe-то и къде я търси тая джава.
- Този човек дава някаква връзка към някакви японци, които са намерили какво точно става.
- При мен това не тръгва. Копирам си jre папката от оригиналното на няколко произволни места в близост до exe-то. На четвъртия път тръгва.
- … И ме напсува с грешка със стак ерор в джавата. Някъде из недрата на apache.xerces или каквото там. Компилатора не може да тръгне с тая моя джава.
- Обикалям сайта на sun в търсене на някакво читаво jre. Никой не ти казва flex-а с какво е тестван.
- Не го намирам. Пускам другия компютър и изкопавам някаква стара инсталация, с неясен произход.
- С нея компилатора тръгна…
- Изградил доверие във французите, решавам да използвам техния helloworld от форума (в лабораториите на адоб няма, или поне не намирам) :
package { import flash.display.MovieClip; import flash.display.TextField; public class TestAS3 extends MovieClip { public function TestAS3() { var t:TextField = new TextField(); t.text = \"Hello World!\"; addChild( t ); } } } - Но почва да гърми с грешки, същите както при французина.
C:\Flex\frameworks\Test.as(7): col: 26 Error: Type was not found or was not a compile-time constant: TextField. private var __test_txt:TextField;
- Във форума май никой не знае защо.
- Решавам, че ми няма някаква AS библиотека, и обикалям в търсене на недоконфигурирано нещо.
- В конфигурацията добавям class-path директиви, които сочат към папките с фреймуърка, включващ примитиви като муви клип и текстово поле.
- Kомпилатора приплака, че нямало такава директива. В документацията на адоб се оказва, че трябвало видиш ли да се преименува на library-path. Били го сменили между две бети.
- Списъка със сменените неща е огромен. По-голямата част от документацията не е ъпдейтната, и много директиви вече не важат. Грешките са неясни.
- В пристъп на просветление отивам да проверя дали наистина TextField класа за който се оплаква компилатора, го има в тоя пакет. Може пък примера да е сгрешен?
- Както се и оказва. Тук намирам, че текстфиелд класа вече е получил нов пакет - flash.text.
- … Батерията падна. Включвам на ток.
- … Компилирам… Няколко рутинни псувни. Кафето вече е студено.
- Не мога да повярвам. най накрая имам main.swf (изходния файл).
- … Който не тръгва, защото имам стар плеър. Тихи псувни и сваляне на бета 9 плеъра.
- За когото си спомням, че ме предупредиха че ебавал майката на някой компютри. Чудя се дали да го инсталирам?
Тук реших да си почина, и да блогна. Ето и скрийншот от браузъра ми, в който ясно се вижда лутането ми из интернет. Всяко начало е трудно, но от това по-трудно отдавна не бях имал.
Поука и изводи от историята няма да вадя. Вива ла франс да кажа само. MTASC компилатора го пуснах за има-няма половин час. Понякога един човек може да направи по-добро нещо от цяла гигантска компания…
Май 28th, 2006 at 4:56 pm
Ами.. извода е ясен - ползвайте продуктите на Microsoft
В такива ситуации човек разбира защо Visual Studio 2005 струва близо $1000 … И аз мога да се похваля с доста подобни истории от времето, когато се опитвах да пиша на Java…
Май 28th, 2006 at 7:59 pm
И това е само компилатор. даже не е е среда за разработка. Не ми се мисли какво ме чака, ако пробвам да подкарам средата им за разработка.