2009-03-11 16 views
2

Ich habe ein Projekt, das mehrere Komponenten von einem einzigen Preloader swf geladen hat.mxmlc kompiliert anders unter Linux und Windows?

Der Preloader SWF ist streng AS3 (No flex) und Loader verwendet, um zwei verschiedene swfs zu laden, die beide die Flex-Bibliothek verwenden (statisch kompiliert, nicht rsl).

Wenn ich alle drei unter Linux kompilieren und den resultierenden Preloader ausführen, kann einer der swfs nicht ordnungsgemäß geladen werden, und die Ausnahme unten (am Ende dieses Beitrags) wird ausgelöst.

Wenn ich die gleiche Komponente mit der gleichen Ant-Task in Windows kompilieren, lädt die Komponente einfach ohne Fehler. Die Windows-Datei ist auch 683 Bytes kleiner.

Dies gilt für die Verwendung des Flex SDK 3.2.0 und 3.3.0 unter Linux und Windows.

Haben Sie diese Art von Verhalten gesehen? Kannst du irgendwelche Vorschläge machen, warum es passieren könnte oder wie man herausfinden kann, was falsch ist?

TypeError: Error #1009: Cannot access a property or method of a null object reference. 
at mx.managers::FocusManager/activate() 
at mx.managers::SystemManager/activateForm() 
at mx.managers::SystemManager/activate() 
at mx.core::Application/initManagers() 
at mx.core::Application/initialize() 
at OC_Footer/initialize() 
at mx.managers::SystemManager/http://www.adobe.com/2006/flex/mx/internal::childAdded() 
at mx.managers::SystemManager/initializeTopLevelWindow() 
at mx.managers::SystemManager/http://www.adobe.com/2006/flex/mx/internal::docFrameHandler() 
at mx.managers::SystemManager/docFrameListener() 
+0

Wenn Sie es herausfinden, schlage ich vor, einen Fehler mit Adobe zu archivieren: http://bugs.adobe.com/flex – joshtynjala

Antwort

0

Ich bin nicht sicher, dass ich das eigentliche Problem gelöst habe (Warum die Kompilierung unter verschiedenen Betriebssystemen anders war), aber ich habe festgestellt, dass die neuere Version des Flex SDK nicht die gleichen Probleme aufweisen.

habe ich einen Fehler für das Problem hier:

https://bugs.adobe.com/jira/browse/SDK-20147

Die kurze davon ist, bauen 3958 (der Standard mit Flexbuilder zu der Zeit, dass ich den Fehler erstellt - dieses immer noch sein kann true) scheint eine Reihe von kleineren Fehlern zu haben. Durch das Aktualisieren des Flex-SDK auf Build 4852 werden die Symptome gemildert, und ich kann in einer Reihe von Umgebungen Projekte erfolgreich erstellen.

0

Warten Sie also, verwenden Sie unterschiedliche Version des SDK in jeder Plattform? Das würde sicherlich einige Unterschiede ausmachen (zumindest in der Größe der swf ...)

IIUC Sie erhalten diesen Fehler, wenn Sie die Seite in den Browser laden, oder? Es ist schwer zu sagen, dass nur der Stack-Trace falsch ist, aber ich kann sagen, dass ich unter Windows einen ähnlichen Fehler hatte und es mit Tastaturereignissen zu tun hatte (zB mit der Tabulatortaste zwischen Elementen wechseln, wenn Popups sichtbar sind), und ähnliche Sachen). Entschuldigung, ich kann keine genauere Diagnose anbieten.

+0

Sorry, um unklar zu sein, gleiche sdk-Version auf Linux und Windows. Auch funktioniert es einwandfrei, keine Fehler, wenn diese Komponente unter Windows kompiliert wird. –

+0

Auch um klar zu sein, sind alle drei Komponenten zunächst auf der Linux-Box kompiliert. Einer von ihnen lädt nicht. Wenn man die anderen beiden aus der Linux-Box nimmt und die dritte aus der Windows-Box hinzufügt, kann das gesamte Framework funktionieren. –

Verwandte Themen