Niniejszy dokument TechNote opisuje znane problemy w kompilatorze Flex 2, które mogą powodować błędy podczas kompilowania aplikacji Flex.

  • 175465: Błąd środowiska uruchomieniowego pojawiający się, ponieważ kompilator nie informuje o błędzie, kiedy istnieje chroniona ustalona metoda wpodstawowejklasie z tą samą nazwą co chroniona zmienna w klasie pochodnej: VerifyError: Błąd #1107: Dane ABC są uszkodzone, próba odczytu poza granicami.
  • 174533: Niezamknięty wiersz \n w pliku właściwości pakietu zasobów powoduje błędy w kompilatorze wskazujące na generowany kod: Komunikat: Błąd składni: Wiersz znaków musi być zamknięty przed łamaniem wiersza.
  • 175233: Jeśli plik właściwości pakietu zasobów kodowany jest w systemieunicode, kompilator generuje mylne błędy, np. Błąd: Błąd składni: tekst wejściowy zakończył się przed osiągnięciem cudzysłowu zamykającego ciąg znaków
    Wszystkie ciągi w pliku właściwości muszą być kodowane w systemie Latin-1 albo UTF-8.
  • 170249: Brak ostrzeżenia lub błędu kompilatora w przypadku niepasujących obiektów źródłowych i docelowych wmx:Wiązanieznacznik powodujący błąd środowiska uruchomieniowego.
  • 172353: Pojawia się błąd środowiska uruchomieniowego,kiedyLokalizacja.getCurrent(Application.application.systemManager).kraj
    jest wykorzystywany do uzyskania kraju w aplikacji, gdzie -locale nie zostało ustawione jako opcja kompilatora, na przykład
    TypeError: Błąd #1009: Nie można uzyskać dostępu do właściwości lub metody referencji obiektu zerowego.
  • 169682: Podczas debugowania, jeżeli korpus „dla” pętli jest pojedynczym wierszem, pojedyncze kroki w całej pętli.
  • 171214: Klasy wdrażające interfejs nie są wymagane przez kompilator w celu uzgodnienia wartości domyślnych w metodach do interfejsu metod.
  • 174646: Jeżeli klasa zawiera funkcje dostępu z różnymi atrybutami kontroli dostępu do przestrzeni nazw, (np.achroniony ustawiający i publiczny otrzymujący) użycie jednego z nich powoduje błąd czasu kompilacji, np.,Błąd kompilatora1000: Dwuznaczne odniesienie do myVar
    Obejściem problemu jest zmiana nazwy funkcji otrzymującej lub ustawiającej, aby uniknąć niezgodności.
  • 175271: Słownik nie obsługuje prawidłowo MethodClosures, przez co możliwe jest utworzenie dwóch wpisów w słowniku z taką samą funkcją jako kluczem. Sposobem rozwiązania problemu jest zadeklarowanie zmiennej i przypisanie jej do zamknięcia a następnie zastosowanie tej zmiennej.
  • 175264: Kompilowanie aplikacji tworzącej wystąpienie klasy, która generuje ostrzeżenie kompilatora, będzie powodować raportowanie tego samego ostrzeżenia kompilatora, nawet po usunięciu odniesienia do błędnej klasy. Ostrzeżenie kompilatora przestanie się pojawiać po czystym zbudowaniu.
  • 171221: Kompilatormxmltworzy ślad stosu, kiedy kodmxmlzawiera wyrażenie ActionScript z błędem składniowym. Na przykład:

    <?xmlversion="1.0" encoding="iso-8859-1"?> <mx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml" > <mx:TextInput id="ti" text="{String(new Date()}"/> </mx:Application>
  • 172876: Kompilator wskazuje ukryte błędy podczas używania nazwy zmiennej, która jest już stosowana w klasie podstawy modelu aplikacji Flex albo w klasie Flash API, jak np. DisplayObject. Na przykład:
    Dostęp prawdopodobnie niezdefiniowanej właściwości x poprzez odniesienie ze statycznym typem ciągu. Dostęp prawdopodobnie niezdefiniowanej właściwości y poprzez odniesienie ze statycznym typem ciągu. Dostęp prawdopodobnie niezdefiniowanego tekstu właściwości poprzez odniesienie ze statycznym flash.display.:DisplayObject
  • 174788: Kompilowanie przyrostowe wskazuje na błąd po zaktualizowaniu pliku właściwości pakietu zasobów, np. Błąd: Nie można rozwiązać klasy ResourceBundle: TestResources_properties
    Aby usunąć ten błąd, należy wyczyścić projekt w aplikacji Flex Builder.

Dodatkowe informacje

Ta zawartość jest licencjonowana na warunkach licencji Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License  Posty z serwisów Twitter™ i Facebook nie są objęte licencją Creative Commons.

Informacje prawne   |   Zasady prywatności online