In dieser TechNote werden bekannte Probleme mit dem Flex 2-Compiler beschrieben, die beim Kompilieren der Flex-Anwendung zu Fehlern führen können.

  • 175465: Der folgende Laufzeitfehler wird verursacht, weil der Compiler einen Fehler nicht melden kann, wenn sich eine geschützte Set-Methode in derBasisklassemit dem gleichen Namen wie eine geschützte Membervariable in einer abgeleiteten Klasse befinde: VerifyError: Error #1107: The ABC data is corrupt, attempt to read out of bounds. (Die ABC-Daten sind beschädigt, Grenzprüfung bei Leseversuch fehlgeschlagen.)
  • 174533: Nicht durch Escapezeichen formatiertes \n in einer Ressourcenpaket-Eigenschaftendatei verursacht Compiler-Fehler, die zurück auf den generierten Code verweisen: Message: Syntax error: A string literal must be terminated before the line break. (Meldung: Syntaxfehler: Ein Zeichenfolgenliteral muss vor dem Zeilenumbruch beendet werden.)
  • 175233: Wenn eine Ressourcenpaket-Eigenschaftendatei inUnicodeverschlüsselt ist, erstellt der Compiler irreführende Fehler, z. B.:Syntax error: input ended before reaching the closing quotation mark for a string literal (Syntaxfehler: Eingabe beendet, bevor das schließende Fragezeichen für ein Zeichenfolgenliteral erreicht wurde)
    Alle Zeichenfolgen in Eigenschaftendateien müssen in Latin-1 oder UTF-8 verschlüsselt sein.
  • 170249: Für nicht übereinstimmende Objekte in der Quelle und im Ziel des Tagsmx:Bindingwird keine Kompilierungswarnung und kein Fehler ausgegeben, was zu einem Laufzeitfehler führt.
  • 172353: Ein Laufzeitfehler wird ausgelöstwennLocale.getCurrent(Application.application.systemManager).country
    verwendet, um das Land in einer Anwendung abzurufen, in der -locale nicht als Compileroption übergeben wurde, z. B.
    TypeError: Error #1009: Cannot access a property or method of a null object reference (Kein Zugriff auf eine Eigenschaft oder Methode einer Null-Objekt-Referenz).
  • 169682: Wenn beim Debugging der Body-Bereich einer „For“-Schleife eine einzelne Zeile ist, gilt die Einzelschrittausführung für die gesamte Schleife.
  • 171214: Klassen, die eine Schnittstelle implementieren, werden vom Compiler nicht benötigt, um die Standardwerte in ihren Methoden den Schnittstellenmethoden anzupassen.
  • 174646: Wenn eine Klasse Accessor-Funktionen mit unterschiedlichen Namespace-Attributen für Zugriffssteuerung enthält (z. B.einengeschütztenSetter und einen öffentlichen Getter), verursacht das Verwenden eines von ihnen Kompilierzeitfehler, z. B.,Compiler-Error1000: Ambiguous reference to myVar (Mehrdeutiger Verweis auf myVar)
    Die Problemumgehung besteht darin, die Getter- oder die Setter-Funktion umzubenennen, um die Nichtübereinstimmung zu vermeiden.
  • 175271: Das Wörterbuch verarbeitet MethodClosures nicht korrekt, sodass zwei Einträge im Wörterbuch mit der gleichen Funktion als Schlüssel stehen können. Um dieses Problem zu umgehen, können Sie eine Variable angeben, sie dem Abschluss zuweisen und diese Variable weiterhin verwenden.
  • 175264: Beim Kompilieren einer Anwendung, die eine Klasse instanziiert, die eine Compiler-Warnung generiert, wird weiterhin die gleiche Warnung gemeldet, auch wenn der Verweis auf die betreffende Klasse entfernt wurde. Die Compiler-Warnung wird nach Installation eines neuen Builds nicht mehr gemeldet.
  • 171221: Der CompilermxmlCompiler erzeugt eine Stapelüberwachung, wenn der CodemxmlActionScript-Ausdruck mit einem Syntaxfehler hat. Beispiel:

    <?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: Compiler löst kryptische Fehler aus, wenn ein Variablenname verwendet wird, der bereits von einer Flex-Anwendungsmodell-Basisklasse oder einer Flash-API-Klasse wie DisplayObject verwendet wird. Beispiel:
    Zugriff auf möglicherweise nicht definierte Eigenschaft "x" über einen Verweis mit dem statischen Typ "Zeichenfolge". Zugriff auf möglicherweise nicht definierte Eigenschaft "y" über einen Verweis mit dem statischen Typ "Zeichenfolge". Zugriff auf möglicherweise nicht definierte Eigenschaft "Text" über einen Verweis mit dem statischen Typ "flash.display".:DisplayObject
  • 174788: Inkrementelles Kompilieren zeigt einen Fehler nach dem Aktualisieren einer Ressourcenpaket-Eigenschaftendatei an, z. B. Fehler: Unable to resolve a class for ResourceBundle: TestResources_properties (Klasse kann nicht aufgelöst werden für: TestResources_properties)
    Bereinigen Sie in Flex Builder das Projekt, um den Fehler zu beheben.

Weitere Informationen

Dieses Werk unterliegt den Bedingungen der Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.  Twitter™- und Facebook-Beiträge fallen nicht unter die Bedingungen der Creative Commons-Lizenz.

Rechtliche Hinweise   |   Online-Datenschutzrichtlinie