Последна актуализация на
19.05.2021 г.
|
Също се прилага за Flex Builder
Тази TechNote документ описва известни проблеми с компилатора Flex 2, които могат да причинят грешки при компилирането на Flex приложение.
- 175465: Следващата грешка по време на работа се генерира, защото компилаторът не успява да подаде сигнал за грешка, когато има защитен наборен метод в базовия клас със същото име като защитена променлива в производния клас: VerifyError: Грешка №1107: ABC данните са повредени, опит за четене извън границите.
- 174533: Една unescape функция \n във файл със свойства от пакета с ресурси причинява грешки в компилатора, които сочат обратно в генерирания код: Съобщение: Синтактична грешка: Литералният низ трябва да бъде завършен преди края на реда.
- 175233: Ако файлът със свойства от пакета с ресурси е с unicode кодировка , компилаторът произвежда подвеждащи грешки, например, Грешка: Синтактична грешка: въвежданият низ завърши преди достигане на затварящите кавички за литералния низ
Всички низове във файла със свойства трябва да бъдат кодирани в Latin-1 или UTF-8. - 170249: Не се появява предупреждение или грешка при несъответстващи обекти в източника и местоназначението на mx :Свързан таг, което води до грешка по време на работа.
- 172353: Възниква грешка по време на работа когато Locale .getCurrent(Application.application.systemManager).country
се използва за изтегляне на страната в приложение, където променливата -locale не е предадена като опция на компилатора, например,
TypeError: Грешка №1009: Не може да се осъществи достъп до свойство или метод на препратка към нулев обект. - 169682: При постъпково отстраняване на грешки, ако тялото на цикъл „for" съдържа един ред, преминаването през целия цикъл става само за една стъпка.
- 171214: Компилаторът не изисква от класовете, които изграждат интерфейс, да имат стойностите по подразбиране на техните методи като методите на интерфейса.
- 174646: Ако даден клас съдържа функции с различни атрибути на пространството за контрол на достъпа, (например, a защитен setter и публичен getter) използването на един от тях причинява грешка при компилирането, например , Компилаторна грешка 1000: Нееднозначна препратка към myVar
За да се избегне това несъответствие, може да се преименува функцията за getter или setter. - 175271: Речникът не обработва правилно MethodClosures, което позволява да се направят две вписвания в речника със същата функция като ключ. За решаване на проблема може да декларирате променлива и да я присвоите на затварянето, и след това да продължите да използвате тази променлива.
- 175264: Компилирането на приложение, което създава клас, генериращ предупреждение в компилатора, ще продължи да създава същите предупреждения в компилатора, дори след премахването на препратката към проблемния клас. Предупреждението в компилатора вече няма да се появява след компилация начисто.
- 171221: mxml компилаторът създава стекова трасировка, когато mxml кодът има ActionScript израз със синтактична грешка. Например:
<? xml version="1.0" encoding="iso-8859-1"?> <mx:Application xmlns :mx="http://www.adobe.com/2006/mxml" > <mx:TextInput id="ti" text="{String(new Date()}"/> </mx:Application> - 172876: Компилаторът издава криптирани грешки при използването на име на променлива, което вече е използвано от базовия клас на Flex приложението или от Flash API класа като DisplayObject. Например:
Достъп на евентуално неопределено свойство x чрез препратка със String от статичен тип. Достъп на евентуално неопределено свойство y чрез препратка със String от статичен тип. Достъп на евентуално неопределено свойство text чрез препратка с flash.display от статичен тип. :DisplayObject - 174788: Инкременталното компилиране показва грешка след актуализиране на файла със свойства от пакета с ресурси, например Грешка: Не може да се разреши клас за ResourceBundle: TestResources_properties
във Flex Builder, изчистете проекта, за да премахнете грешката.
Допълнителна информация
Допълнителна информация за грешки и предупреждения на компилатора може да намерите в следната документация: