
<!DOCTYPE html>
<!--
 Generated by Apache Maven Doxia at 2016-10-27
 Rendered using Reflow Maven Skin 1.1.1 (http://andriusvelykis.github.io/reflow-maven-skin)
-->
<html  xml:lang="en" lang="en">

	<head>
		<meta charset="UTF-8" />
		<title>Apache Flex® - Getting Started with Apache Flex</title>
		<meta name="viewport" content="width=device-width, initial-scale=1.0" />
		<meta name="description" content="" />
		<meta http-equiv="content-language" content="en" />

		<link href="./css/bootstrap.min.css" rel="stylesheet" />
		<link href="./css/bootstrap-responsive.min.css" rel="stylesheet" />
		<link href="./css/docs.css" rel="stylesheet" />
		<link href="./css/reflow-skin.css" rel="stylesheet" />

		<link href="http://yandex.st/highlightjs/7.5/styles/default.min.css" rel="stylesheet" />

		<link href="./css/lightbox.css" rel="stylesheet" />

		<link href="./css/site.css" rel="stylesheet" />
		<link href="./css/print.css" rel="stylesheet" media="print" />

		<!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
		<!--[if lt IE 9]>
			<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
		<![endif]-->


		
<link rel="icon" href="img/favicon.ico" type="image/x-icon"/>
<link rel="apple-touch-icon" href="img/apple-touch-icon-60.png"/>
<link sizes="76x76" rel="apple-touch-icon" href="img/apple-touch-icon-76.png"/>
<link sizes="120x120" rel="apple-touch-icon" href="img/apple-touch-icon-120.png"/>
<link sizes="152x152" rel="apple-touch-icon" href="img/apple-touch-icon-152.png"/>
	</head>

	<body class="page-doc-getstarted project-flex-site" data-spy="scroll" data-offset="60" data-target="#toc-scroll-target">

		<div class="navbar navbar-fixed-top">
			<div class="navbar-inner">
				<div class="container">
					<a class="btn btn-navbar" data-toggle="collapse" data-target="#top-nav-collapse">
						<span class="icon-bar"></span>
						<span class="icon-bar"></span>
						<span class="icon-bar"></span>
					</a>
					<div class="nav-collapse collapse" id="top-nav-collapse">
						<ul class="nav pull-right">
							<li ><a href="index.html" title="Home">Home</a></li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">About Flex <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="about-whatis.html" title="What is Flex?">What is Flex?</a></li>
									<li ><a href="about-features.html" title="Features">Features</a></li>
									<li ><a href=".html" title="Tour de Flex">Tour de Flex</a></li>
									<li ><a href="about-licensing.html" title="License & Trademarks">License & Trademarks</a></li>
									<li ><a href="about-people.html" title="The Team">The Team</a></li>
									<li ><a href="about-history.html" title="Project History">Project History</a></li>
									<li ><a href="about-assets.html" title="Logo and Assets">Logo and Assets</a></li>
								</ul>
							</li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">Community <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="community-getinvolved.html" title="How to get involved">How to get involved</a></li>
									<li ><a href="community-mailinglists.html" title="Mailing Lists">Mailing Lists</a></li>
									<li ><a href="community-showcase.html" title="Flex Showcase">Flex Showcase</a></li>
									<li ><a href="community-3rdparty.html" title="Third-Party">Third-Party</a></li>
									<li ><a href="https://cwiki.apache.org/confluence/display/FLEX/Apache+Flex+Wiki" title="Wiki" class="externalLink">Wiki</a></li>
									<li ><a href="http://blogs.apache.org/flex/" title="Blog" class="externalLink">Blog</a></li>
								</ul>
							</li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">Development <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="dev-faq.html" title="Developer FAQ">Developer FAQ</a></li>
									<li ><a href="dev-sourcecode.html" title="Source Code">Source Code</a></li>
									<li ><a href="https://issues.apache.org/jira/browse/FLEX" title="Bug-Tracker" class="externalLink">Bug-Tracker</a></li>
								</ul>
							</li>
							<li class="dropdown active">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">Documentation <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li class="active"><a href="" title="Getting Started">Getting Started</a></li>
									<li ><a href="doc-videos.html" title="Videos">Videos</a></li>
									<li ><a href=".html" title="Flex ASDocs">Flex ASDocs</a></li>
									<li ><a href=".html" title="FlexJS ASDocs">FlexJS ASDocs</a></li>
									<li ><a href="http://help.adobe.com/en_US/flex/using/index.html" title="Documentation Reference (Old)" class="externalLink">Documentation Reference (Old)</a></li>
									<li ><a href=".html" title="FlexUnit Tutorials">FlexUnit Tutorials</a></li>
									<li ><a href=".html" title="FlexUnit ASDocs">FlexUnit ASDocs</a></li>
									<li ><a href="doc-website.html" title="Contributing to the Flex Website">Contributing to the Flex Website</a></li>
								</ul>
							</li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">About Apache <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="http://www.apache.org" title="The Apache Software Foundation Website" class="externalLink">The Apache Software Foundation Website</a></li>
									<li ><a href="http://www.apache.org/foundation/contributing.html" title="Donations" class="externalLink">Donations</a></li>
									<li ><a href="http://www.apache.org/foundation/sponsorship.html" title="Sponsorship" class="externalLink">Sponsorship</a></li>
									<li ><a href="http://www.apache.org/foundation/thanks.html" title="Thanks" class="externalLink">Thanks</a></li>
								</ul>
							</li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">Download Flex <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="download-installer.html" title="SDK Installer (For Application Developers)">SDK Installer (For Application Developers)</a></li>
									<li ><a href="download-source.html" title="SDK Source Code (For SDK Developers)">SDK Source Code (For SDK Developers)</a></li>
									<li ><a href="download-binaries.html" title="SDK Binaries (For SDK Developers)">SDK Binaries (For SDK Developers)</a></li>
									<li ><a href="download-flexjs.html" title="FlexJS 'beta' (For Application Developers)">FlexJS 'beta' (For Application Developers)</a></li>
									<li ><a href="download-flexunit.html" title="FlexUnit (For Application Developers)">FlexUnit (For Application Developers)</a></li>
									<li ><a href="download-blazeds.html" title="Blaze DS Source Code">Blaze DS Source Code</a></li>
									<li ><a href="download-tourdeflex.html" title="Tour De Flex Source Code">Tour De Flex Source Code</a></li>
									<li ><a href="download-squiggly.html" title="Squiggly Spell Checker">Squiggly Spell Checker</a></li>
									<li ><a href="download-utilities.html" title="Flex Utilities">Flex Utilities</a></li>
									<li ><a href="download-archive.html" title="Previous Versions">Previous Versions</a></li>
								</ul>
							</li>
						</ul>
					</div><!--/.nav-collapse -->
				</div>
			</div>
		</div>

	<div class="container">

	<!-- Masthead
	================================================== -->

	<header>
	<div class="jumbotron subhead">
		<div class="row" id="banner">
			<div class="span12">
				<div class="pull-left">
					<a href="http://flex.apache.org/" id="bannerLeft"><img src="img/logo-flex.png" alt='"'Apache Flex'"' /></a>
				</div>
				<div class="pull-right">
					<a href="http://www.apache.org" id="bannerRight"><img src="img/logo-asf.png" alt='"'An Apache Project'"' /></a>
				</div>
			</div>
		</div>
	</div>
	</header>

	<div class="main-body">
	<div class="row">
		<div class="span12">
			<div class="body-content">
<!-- Licensed to the Apache Software Foundation (ASF) under one or more
 contributor license agreements.  See the NOTICE file distributed with
 this work for additional information regarding copyright ownership.
 The ASF licenses this file to You under the Apache License, Version 2.0
 (the "License"); you may not use this file except in compliance with
 the License.  You may obtain a copy of the License at
 
 http://www.apache.org/licenses/LICENSE-2.0
 
 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License. --> 
<div class="page-header">
 <h1>Getting Started with Apache Flex</h1>
</div> 
<p>Before you start to learn how to program with Apache Flex, you will need to get your environment setup. The Apache Flex SDK includes everything you need to make applications except for an IDE. You technically don’t need one, but it is <b>HIGHLY</b> encouraged for you to use one. We won’t cover the workflows in this document on how to create and compile applications with Notepad or vi, just know that you can.</p> 
<p>There are four major IDEs available that work with Apache Flex. There are other, lesser-used IDEs and plugins for other IDEs out there as well. For the most part, the workflow is the same for all of them. Below we will outline the steps needed to use Apache Flex with <a class="externalLink" href="http://www.adobe.com/products/flash-builder-family.html">Adobe Flash Builder 4.7</a>, <a class="externalLink" href="http://www.jetbrains.com/idea/">JetBrains IntelliJ IDEA 13.1</a>, <a class="externalLink" href="http://www.flashdevelop.org/">FlashDevelop</a> and <a class="externalLink" href="http://fdt.powerflasher.com/">FDT</a>. If you use another IDE and want to help us add to this document please contact us on the <a href="community-mailinglists.html">mailing list</a>.</p> 
<p>Get started by setting up the Apache Flex SDK itself, then move on the specific section for your IDE.</p> 
<div class="section"> 
 <h2 id="Setting_up_the_Apache_Flex_SDK">Setting up the Apache Flex SDK</h2> 
 <ol style="list-style-type: decimal"> 
  <li><b>Download the SDK installer</b> Go to the <a href="installer.html">Download the SDK Installer</a> on the menu above and install the SDK installer. Click on the Download link on the installer badge, which will download the proper installer for your computer.</li> 
  <li><b>Run the SDK installer</b> The first question you will be asked is the installation directory. If you are on a Mac, use /Applications/Adobe Flash Builder 4.7/sdks/4.14.0/. If you are on a PC, use C:\Program Files(x86)\Adobe Flash Builder 4.7\sdks\4.14.0. You will need to create the 4.14.0 folders. Press Next.</li> 
  <li><b>Accept SDK Licenses and Install</b> Check the red boxes to accept each of the licenses. Read the licenses, of course ;) Click Install to download all the components into the new 4.14.0 directory. This can take a few minutes.</li> 
 </ol> 
</div> 
<div class="section"> 
 <h2 id="IDE-specific_instructions">IDE-specific instructions</h2> 
 <ul> 
  <li><a href="#setupFlashBuilder">Flash Builder</a></li> 
  <li><a href="#setupIDEA">IntelliJ IDEA</a></li> 
  <li><a href="#setupFD">FlashDevelop</a></li> 
  <li><a href="#setupFDT">FDT</a></li> 
 </ul> 
 <div class="section"> 
  <h3 id="Setting_up_Apache_Flex_with_Adobe_Flash_Builder">Setting up Apache Flex with Adobe Flash Builder</h3> 
  <ol style="list-style-type: decimal"> 
   <li><b>Download Adobe Flash Builder</b> Adobe Flash Builder is available from the <a class="externalLink" href="http://www.adobe.com/products/flash-builder-family.html">Adobe Website</a>. It offers a 30-day trial and retails for about $250. It is available for both Windows and MacOS X</li> 
   <li><b>Install Adobe Flash Builder</b> Follow the on-screen installation wizard.</li> 
   <li><b>Run Flash Builder</b> Launch Adobe Flash Builder. You may need to login with your Adobe ID to activate the trial.</li> 
   <li><b>Tell Flash Builder about the SDK</b> On Windows, go to the Window Menu -&gt; Preferences. On the Mac, go to the Flash Builder menu -&gt; Preferences. Go to the Flash Builder node, then select the Installed Flex SDKs node. Click [ADD], then choose the directory in which you saved the 4.14.0 SDK (Step 4). The name should be populated with Apache Flex 4.14.0 FP11.1 en_US. Press OK, and OK again.</li> 
   <li><b>Create a new project</b> Right-click in the empty Package Explorer area, choose New -&gt; Flex Project. Give the project a name. Under the Flex SDK version, choose Apache Flex 4.14.0. Press Finish. Flash Builder will create the new project.</li> 
   <li><b>Start Coding!</b> Jump down below to make your first Hello World application.</li> 
  </ol> 
  <div class="section"> 
   <h4 id="Known_Flash_Builder_Issues">Known Flash Builder Issues</h4> 
   <p>Adobe Flash Builder 4.7 and Adobe Flash Builder 4.6 both contain a bug where, when generating the .mxml file for a new project that uses Apache Flex and Spark Application, Flash Builder will incorrectly insert the attribute:</p> 
   <div class="source"> 
    <div class="source"> 
     <pre>layout=&quot;absolute&quot;
</pre> 
    </div> 
   </div> 
   <p>This results in a compile error in the new project. The remedy is to simply remove the errant attribute.</p> 
   <p>A <a class="externalLink" href="https://cwiki.apache.org/confluence/display/FLEX/Adobe+Flash+Builder+'New+Project'+Bug">wiki page</a> has been set up to contain the latest news on Adobe’s attempt to correct this problem.</p> 
  </div> 
 </div> 
 <div class="section"> 
  <h3 id="Setting_up_Apache_Flex_with_Jetbrains_IntelliJ_IDEA">Setting up Apache Flex with Jetbrains IntelliJ IDEA</h3> 
  <ol style="list-style-type: decimal"> 
   <li><b>Download JetBrains IntelliJ IDEA</b> IntelliJ IDEA is available from the <a class="externalLink" href="http://www.jetbrains.com/idea/">JetBrains Website</a>. They offer a 30-day trail and it retails for about $200. It is available for both Windows and MacOS X</li> 
   <li><b>Install IntelliJ IDEA</b> Follow the on-screen installation wizard.</li> 
   <li><b>Download the SDK installer</b> Go to the <a href="installer.html">Download the SDK Installer</a> on the menu above and install the SDK installer. Click on the Download link on the installer badge, which will download the proper installer for your computer.</li> 
   <li><b>Run the SDK installer</b> The first question you will be asked is the installation directory. Note where you save the SDK (as you will need it later). Press Next.</li> 
   <li><b>Accept SDK Licenses and Install</b> Check the red boxes to accept each of the licenses. Read the licenses, of course ;) Click Install to download all the components into the new 4.14.0 directory. This can take a few minutes.</li> 
   <li><b>Run IntelliJ</b> Run IntelliJ. You will need to start the 30 day trial, and accept the license agreement when the app runs the first time. You will be launched into the configuration wizard. Select which VCS Plugins you want (we suggest Git Subversion). Next, select the Web/J2EE Plugins (We suggest Database, SQL and WebServices). Next, select the HTML Development tools (You must select FLash/Flex, CSS, JavaScript, JavaScript Debugger, but we suggest keeping them all selected). Finally, select which other plugins you wish to use (Select ANT, Properties, Copyright, Coverage, IntelliLang, Inspection Gadgets, Type Migration, UML. We suggest keeping most of the defaults).</li> 
   <li><b>Create your new project</b> When at the welcome screen, select “Create New Project”. In the left menu, choose Flash Module under the Other heading. Give the project a name, and select Next.</li> 
   <li><b>Configure the new project</b> On the “New Project” screen, select Web for the target platform, and keep the rest of the options the same. Keep the Flex SDK as [none] for this step. Click Finish.</li> 
   <li><b>Tell IntelliJ about the SDK</b> Right click on your project name in the Project Explorer, and click Open Module Settings. In the second pane, click the application settings (it says (app) behind the name – it should have red squigglies under it). Go to the dependency tab. To the right of the Flex SDK drop down, select New… to add the 4.14.0 SDK to the project. Find the 4.14.0 directory you created in step 4, and select Choose. Press Ok to return to the project. Wait for IntelliJ to index the project and the new SDK.</li> 
   <li><b>Create your Application file</b> Add a new MXML component under the /src/ directory by right clicking on src. Give it a name of your choosing, Template of “Flex 4 Component” and Parent Component of Application (spark.components).</li> 
   <li><b>Finish configuring your project</b> Go back to the project settings (right-click on the project name in the project explorer -&gt; Module Settings). Go to the General Tab of the app settings. Click the … button to the right of the Main Class box, and choose the filename you just created. This will set the project root.</li> 
   <li><b>Start Coding!</b> Jump down below to make your first Hello World application.</li> 
  </ol> 
 </div> 
 <div class="section"> 
  <h3 id="Setting_up_Apache_Flex_with_FlashDevelop">Setting up Apache Flex with FlashDevelop</h3> 
  <p>You can follow along the steps described in this <a class="externalLink" href="https://cwiki.apache.org/confluence/display/FLEX/2.3+FlashDevelop">wiki page</a></p> 
 </div> 
 <div class="section"> 
  <h3 id="Setting_up_Apache_Flex_with_FDT">Setting up Apache Flex with FDT</h3> 
  <p>You can follow along the steps described in this <a class="externalLink" href="http://vimeo.com/46898669">video</a></p> 
 </div> 
</div> 
<div class="section"> 
 <h2 id="Creating_your_first_Hello_World_application">Creating your first Hello World application</h2> 
 <p>This is a very simple, generic hello world application. You can learn a lot more by checking out some of our other resources below, or some of our <a href="doc-videos.html">tutorial videos</a>.</p> 
 <ol style="list-style-type: decimal"> 
  <li>Set the height and width of your application. Add the following tags to the Application tag (2nd line) : <tt>width=&quot;640&quot; height=&quot;480&quot;</tt></li> 
  <li>Add a new Layout tag within the Application tags. This will tell Flex how we plan on laying out our app. <tt>&lt;s:layout&gt;&lt;/s:layout&gt;</tt></li> 
  <li>Within the layout tags, add a BasicLayout tag. This will tell Flex we intend on telling it where to place our components. <tt>&lt;s:BasicLayout /&gt;</tt></li> 
  <li>Between the Layout and Application tags, Add a Label tag. We will be setting the <tt>text</tt> <tt>horizontalCenter</tt> and <tt>verticalCenter</tt> properties. <tt>&lt;s:Label text=&quot;Hello World!&quot; horizontalCenter=&quot;0&quot; verticalCenter=&quot;0&quot; /&gt;</tt></li> 
  <li>Find the Debug toolbar icon and click it. Your application should be launched in your default web browser and you should see the words Hello World! in the middle of the screen.</li> 
 </ol> 
 <p>The complete code listing is (there may be some variations, depending on your IDE template. Just make sure what we talked about above match) :</p> 
 <div class="source"> 
  <div class="source"> 
   <pre>&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
&lt;s:Application xmlns:fx=&quot;http://ns.adobe.com/mxml/2009&quot;
               xmlns:s=&quot;library://ns.adobe.com/flex/spark&quot;
               xmlns:mx=&quot;library://ns.adobe.com/flex/mx&quot; width=&quot;640&quot; height=&quot;480&quot;&gt;

    &lt;s:layout&gt;
        &lt;s:BasicLayout /&gt;
    &lt;/s:layout&gt;

    &lt;s:Label text=&quot;Hello World!&quot; horizontalCenter=&quot;0&quot; verticalCenter=&quot;0&quot; /&gt;

&lt;/s:Application&gt;
</pre> 
  </div> 
 </div> 
</div> 
<div class="section"> 
 <h2 id="Additional_Resources">Additional Resources</h2> 
 <ul> 
  <li>Make sure to check out our video and screencast library on the <a href="doc-videos.html">videos page</a>.</li> 
  <li>There are a large variety of books available online. One of our favorites is from Michael Labriola and Jeff Tapper (both Apache Flex Committers). <a class="externalLink" href="http://www.amazon.com/Adobe-Flex-4-5-Fundamentals-ebook/dp/B005EFKGCS/">Amazon Link to book</a></li> 
  <li>There are quite a few people that blog about Flex. Check out the <a class="externalLink" href="https://blogs.apache.org/flex/">official blog of Apache Flex</a>, <a class="externalLink" href="http://flashdaily.net/tagged/apacheflex">FlashDaily.net</a> and <a class="externalLink" href="http://feeds.adobe.com/index.cfm?query=bySmartCategory&amp;smartCategoryId=5">Adobe Feeds for Apache Flex</a></li> 
 </ul> 
</div>
			</div>
		</div>
	</div>
	</div>

	</div><!-- /container -->

	<!-- Footer
	================================================== -->
	<footer class="well">
		<div class="container">
			<div class="row">
				<div class="span4 bottom-nav">
					<ul class="nav nav-list">
						<li class="nav-header">About Flex</li>
						<li >
							<a href="about-whatis.html" title="What is Flex?">What is Flex?</a>
						</li>
						<li >
							<a href="about-features.html" title="Features">Features</a>
						</li>
						<li >
							<a href=".html" title="Tour de Flex">Tour de Flex</a>
						</li>
						<li >
							<a href="about-licensing.html" title="License & Trademarks">License & Trademarks</a>
						</li>
						<li >
							<a href="about-people.html" title="The Team">The Team</a>
						</li>
						<li >
							<a href="about-history.html" title="Project History">Project History</a>
						</li>
						<li >
							<a href="about-assets.html" title="Logo and Assets">Logo and Assets</a>
						</li>
						<li class="nav-header">Community</li>
						<li >
							<a href="community-getinvolved.html" title="How to get involved">How to get involved</a>
						</li>
						<li >
							<a href="community-mailinglists.html" title="Mailing Lists">Mailing Lists</a>
						</li>
						<li >
							<a href="community-showcase.html" title="Flex Showcase">Flex Showcase</a>
						</li>
						<li >
							<a href="community-3rdparty.html" title="Third-Party">Third-Party</a>
						</li>
						<li >
							<a href="https://cwiki.apache.org/confluence/display/FLEX/Apache+Flex+Wiki" title="Wiki" class="externalLink">Wiki</a>
						</li>
						<li >
							<a href="http://blogs.apache.org/flex/" title="Blog" class="externalLink">Blog</a>
						</li>
					</ul>
				</div>
				<div class="span4 bottom-nav">
					<ul class="nav nav-list">
						<li class="nav-header">Development</li>
						<li >
							<a href="dev-faq.html" title="Developer FAQ">Developer FAQ</a>
						</li>
						<li >
							<a href="dev-sourcecode.html" title="Source Code">Source Code</a>
						</li>
						<li >
							<a href="https://issues.apache.org/jira/browse/FLEX" title="Bug-Tracker" class="externalLink">Bug-Tracker</a>
						</li>
						<li class="nav-header">Documentation</li>
						<li class="active">
							<a href="#" title="Getting Started">Getting Started</a>
						</li>
						<li >
							<a href="doc-videos.html" title="Videos">Videos</a>
						</li>
						<li >
							<a href=".html" title="Flex ASDocs">Flex ASDocs</a>
						</li>
						<li >
							<a href=".html" title="FlexJS ASDocs">FlexJS ASDocs</a>
						</li>
						<li >
							<a href="http://help.adobe.com/en_US/flex/using/index.html" title="Documentation Reference (Old)" class="externalLink">Documentation Reference (Old)</a>
						</li>
						<li >
							<a href=".html" title="FlexUnit Tutorials">FlexUnit Tutorials</a>
						</li>
						<li >
							<a href=".html" title="FlexUnit ASDocs">FlexUnit ASDocs</a>
						</li>
						<li >
							<a href="doc-website.html" title="Contributing to the Flex Website">Contributing to the Flex Website</a>
						</li>
					</ul>
				</div>
				<div class="span4 bottom-nav">
					<ul class="nav nav-list">
						<li class="nav-header">About Apache</li>
						<li >
							<a href="http://www.apache.org" title="The Apache Software Foundation Website" class="externalLink">The Apache Software Foundation Website</a>
						</li>
						<li >
							<a href="http://www.apache.org/foundation/contributing.html" title="Donations" class="externalLink">Donations</a>
						</li>
						<li >
							<a href="http://www.apache.org/foundation/sponsorship.html" title="Sponsorship" class="externalLink">Sponsorship</a>
						</li>
						<li >
							<a href="http://www.apache.org/foundation/thanks.html" title="Thanks" class="externalLink">Thanks</a>
						</li>
						<li class="nav-header">Download Flex</li>
						<li >
							<a href="download-installer.html" title="SDK Installer (For Application Developers)">SDK Installer (For Application Developers)</a>
						</li>
						<li >
							<a href="download-source.html" title="SDK Source Code (For SDK Developers)">SDK Source Code (For SDK Developers)</a>
						</li>
						<li >
							<a href="download-binaries.html" title="SDK Binaries (For SDK Developers)">SDK Binaries (For SDK Developers)</a>
						</li>
						<li >
							<a href="download-flexjs.html" title="FlexJS 'beta' (For Application Developers)">FlexJS 'beta' (For Application Developers)</a>
						</li>
						<li >
							<a href="download-flexunit.html" title="FlexUnit (For Application Developers)">FlexUnit (For Application Developers)</a>
						</li>
						<li >
							<a href="download-blazeds.html" title="Blaze DS Source Code">Blaze DS Source Code</a>
						</li>
						<li >
							<a href="download-tourdeflex.html" title="Tour De Flex Source Code">Tour De Flex Source Code</a>
						</li>
						<li >
							<a href="download-squiggly.html" title="Squiggly Spell Checker">Squiggly Spell Checker</a>
						</li>
						<li >
							<a href="download-utilities.html" title="Flex Utilities">Flex Utilities</a>
						</li>
						<li >
							<a href="download-archive.html" title="Previous Versions">Previous Versions</a>
						</li>
					</ul>
				</div>
			</div>
		</div>
	</footer>

	<div class="container subfooter">
		<div class="row">
			<div class="span12">
				<p class="pull-right"><a href="#">Back to top</a></p>
				<p class="copyright">Copyright &copy;2016 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.</p>
				<p><a href="http://github.com/andriusvelykis/reflow-maven-skin" title="Reflow Maven skin">Reflow Maven skin</a> by <a href="http://andrius.velykis.lt" target="_blank" title="Andrius Velykis">Andrius Velykis</a>.</p>
			</div>
		</div>
	</div>

	<!-- Le javascript
	================================================== -->
	<!-- Placed at the end of the document so the pages load faster -->
	<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

	<script src="./js/bootstrap.min.js"></script>
	<script src="./js/lightbox.min.js"></script>
	<script src="./js/reflow-scroll.js"></script>
	<script src="http://yandex.st/highlightjs/7.5/highlight.min.js"></script>

	<script src="./js/reflow-skin.js"></script>

	</body>
</html>
