Wie ermittelt Flash Builder, welche SDK-Bibliotheken einbezogen werden sollen?

8

Wie bestimmt es beim Erstellen eines neuen Projekts in Flash Builder, welche SDK-Bibliotheken in den Erstellungspfad aufgenommen werden sollen?

Wenn ich ein neues einfaches Actionscript -Projekt erstelle und Flex 4.1 auswähle, erscheinen die folgenden Bibliotheken im Build-Pfad:

  • playerglobal
  • textLayout
  • osmf
  • Flash-Integration
  • flex
  • Dienstprogramme

Wenn ich zurück gehe und zu Flex 3.5 wechsle, enthält es nur:

  • playerglobal
  • flex
  • Dienstprogramme

Wenn ich ein neues Flex Web -Projekt erstellt und Flex 3.5 auswähle, enthält es:

  • playerglobal
  • Rahmen
  • Automatisierung
  • automation_agent
  • automation_dmv
  • automation_flashflexkit
  • Datenvisualisierung
  • qtp
  • rpc
  • Dienstprogramme

Sind diese Werte in Flash Builder fest codiert oder werden sie irgendwie aus den SDK-Konfigurationsdateien gelesen? Ich habe alle xml config-Dateien wie flex-config.xml und air-config.xml durchgesehen und es sieht nicht so aus, als ob diese Information irgendwo existiert.

Danke.

    
takteek 02.07.2011, 00:05
quelle

3 Antworten

4

Nach einer Menge Versuch und Irrtum und etwas Inspektion mit einem Decompiler habe ich die Antwort:

  1. Flash Builder lädt entweder die Dateien "flex-config.xml" oder "air-config.xml" (abhängig vom Projekttyp) aus dem Verzeichnis "sdk frameworks".
  2. Es geht durch jeden Eintrag, der in library-path aufgeführt ist, und library-external-path fügt es dem Klassenpfad hinzu, wenn es sich um eine SWC handelt. Wenn der Eintrag ein Verzeichnis ist, durchsucht es dieses Verzeichnis nach SWCs und schließt sie ein.
  3. Für jeden Projekttyp gibt es eine fest codierte Liste mit Ausschlüssen, die Flash Builder mitteilen, welche SWCs aus dem Klassenpfad entfernt werden sollen. Für ein einfaches ActionScript-Projekt enthält diese Liste 17 Elemente. Bei einem Flex Web-Projekt besteht die Liste nur aus flex.swc . Diese Liste der Ausschlüsse wird in die .actionScriptProperties -Datei geschrieben.
  4. Alle verbleibenden (nicht ausgeschlossenen) SWCs werden automatisch zum Klassenpfad hinzugefügt. In der Datei .actionScriptProperties ist keine Eingabe erforderlich. (Sie können also jede Datei mit der Erweiterung .swc im Verzeichnis frameworks / libs werfen, und Flash Builder fügt sie ein.)
takteek 12.07.2011, 23:03
quelle
4

Ja, es ist in die Framework-SWCs eingebaut. Sie finden die Verweise und deren Verweise in der Datei /frameworks/build.xml in Ihrem Framework-Verzeichnis.

So können Sie diese Build-Datei bearbeiten, die swcs neu erstellen und diese dann verwenden und sie verknüpfen, wie Sie möchten.

Zum Beispiel (aus Flex 4.5.1 Build-Datei):

%Vor%

Also ist es technisch nicht in Flash Builder programmiert, aber in den SWCs für diesen SDK. (aber Sie können das wie oben beschrieben ändern). : D

    
Nate 07.07.2011 18:15
quelle
2

Ich habe ein Flex 4.1-Projekt erstellt und die Flex-Konfiguration des Flex 4.1 SDK an der folgenden Position überprüft. Ich denke, das ist, wo die mitgelieferten SWC-Dateien im Build Path herkommen - sie haben für mein Projekt abgestimmt:

C: \ Programme \ Adobe \ Adobe Flash Builder 4 \ sdks \ 4.1.0 \ Frameworks \ flex-config.xml

    
Ryan 07.07.2011 11:38
quelle

Tags und Links