Menu

SDK Organization

SourceForge Editorial Staff

SDK Organization

The Flex SDK project is located in the Subversion repository at /flex/sdk. The URL for the project is http://opensource.adobe.com/svn/opensource/flex/sdk/.

Within this project are directories named trunk, branches, and tags, as is standard for Subversion projects. Mainline development, currently for Flex 4, is underway in trunk. The Flex 3 code can be found in branches/3.0.x. The code which shipped as the 3.0.0.477 release of the SDK has been tagged as tags/3.0.0.477.

Top-level directories

Inside either the trunk or a branch or a tag, the most important directories to understand are:

modulesJava source code for the SDK's compile-time command-line tools, such as mxmlc, compc, and fdb.
libJAR files containing compiled Java code for the SDK's command-line tools. When you build the Flex SDK, JARs are compiled into this directory from the Java source code in modules. The JARs that have been checked into Subversion are precompiled; most of these are third-party open-source libraries but a few are proprietary Adobe libraries.
binLaunchers for the SDK's command-line tools. Each launcher simply runs the corresponding JAR file in lib, by executing the main() method of the class specified in the JAR's manifest file.
frameworksActionScript source code for the SDK's runtime functionality. When you build the Flex SDK, SWC files are compiled into frameworks/libs and frameworks/locale. The command-line compilers link your application or library against these framework SWCs.

Other top-level directories that may be of interest are:

asdocA tool that builds HTML documentation for ActionScript classes.
developmentIDE projects useful for building and debugging the command-line tools in Eclipse, and the framework SWCs in Flex Builder.
inFlash Players and AIR support.
mustella An automated testing framework for Flex applications and components.
samples Sample applications developed with Flex.
templates HTML templates for browser-based Flex applications.
tools Miscellaneous tools for Flex development.

The modules directory

Inside modules, you'll find the following Java source code for the SDK's author-time command-line tools:

antTasks Flex-related Ant tasks such as <mxmlc> and <compc>. This code builds flexTasks.jar.
asc The ActionScript 3 compiler. This code builds asc.jar. (This directory is not in tags/3.0.0.477; instead, this tag has a prebuilt asc.jar.)
compiler The MXML compiler. This code builds mxmlc.jar, compc.jar, fcsh.jar, flex-compiler-oem.jar, asdoc.jar, optimizer.jar, digest.jar, and copylocale.jar.
debugger The command-line debugger. This code builds fdb.jar.
swfutilsA library for reading and writing SWF files. This code builds swfutils.jar and swfdump.jar. (This directory is not in tags/3.0.0.477; instead, this tag has a prebuilt JARs.)

The frameworks directory

Inside frameworks, you'll find the ActionScript code for the SDK's runtime framework. The most important directories to understand are:

projectsDirectories containing ActionScript code for each Flex component library. For example, the framework directory is used to build framework.swc.
libs The output directory in which component libraries are built.
locale The output directory in which resource bundle libraries are built. This directory is not in Subversion but is created when you build the SDK.
rsls The output directory in which runtime shared libraries (RSLs) are built. This directory is not in Subversion but is created when you build the SDK.

Other frameworks subdirectories that may be of interest are:

flash-integration The Adobe Flex Component Kit for Flash CS3. It lets you create Flex controls, containers, skins, and other assets in Flash CS3 Professional. You can then import those assets into your Flex application.
javascript JavaScript code that the Flex framework can call, such as the Flex AJAX Bridge (FABridge).
tests A few basic tests that run inside the Mustella automated test harness. These tests must pass before code can be committed into the Subversion repository.
themes A directory containing some visual themes that can be used to change the apperance of a Flex application.

The frameworks/projects directory

This directory contains source code for the following component libraries:

airframework AIR-only classes such as WindowedApplication and HTML.
flex Very basic classes to support applications that don't require the larger framework.
framework The main Flex component library, containing classes such as UIComponent, DataGrid, VBox, DateFormatter, CreditCardValidator, etc.
haloclassic Old skin classes from Flex 1.5.
rpc Client-side networking classes such as HTTPService.
utilities Miscellaneous utility classes.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.