Flex for Free: Setting Up the Flex 4 SDK with Eclipse IDE

I recently wrote about Adobe’s release of Flash Builder 4, ColdFusion Builder and the free Flex 4 SDK. While Flex Builder is a great IDE, as I’m sure are Flash Builder and ColdFusion Builder, most independent developers cannot afford the licenses that can cost hundreds of dollars. What is an aspiring or shoe-string budget Flash developer to do? Fortunately, there is a legal and free method of developing and building Flash applications using the free Flex 4 SDK in combination with the open source Eclipse IDE.

The first things you will need to do is grab the Flex 4 SDK and a version of the Eclipse IDE. Any version of Eclipse should do but I recommend using either Classic or the one for PHP Developers as I’m currently using.  Install Eclipse to where ever you would like and extract the Flex 4 SDK files to any easily accessible folder. For the purposes of this tutorial, I extracted mine to the following path on my Windows laptop: C:\AdobeSDK\Flex4.0

Open up Eclipse and start a new project by clicking File -> New -> Project. The “New Project” wizard should open. Select “Project” from the “General” group in the list and click the Next button.

For the purposes of this tutorial, we will call this project “Test Project.” Type this into the “Project name” field and either leave “Use default location” checked or uncheck it and specify your own workspace location. I will leave this checked. Click the Finish button.

Eclipse should create your project and add it to your Project Explorer window pane. We will mirror the standard folder structure that Flex Builder uses and create three new subfolders to our project called “bin,” “libs” and “src.” Right-click on your project folder, point to “New,” and then click on “New Folder.” Enter “bin” into the “Folder name” field and click the Finish button. Repeat this process twice more, entering the folder names “libs” and “src” each time. When you are finished, you should have three subfolders below your root workspace location.

The bin folder is where we will save the compiled Flash .swf file. The libs folder is where you will drop any .swc file libraries that your project will use. Lastly, the src folder is where all of your project source code will be stored. Before we continue, I recommend adding an editor for the *.as file extension in Eclipse and associating it with the Java editor since ActionScript 3 is very similar in syntax. To do this, click either “Window” from the menu if using Windows or from “Eclipse” if using a Macintosh and then click Preferences. This will bring up the Eclipse Preferences dialog window. Expand the “General” node in the tree and then expand “Editors.” Click on “File Assocations” to see the file associations pane. Once there, click the “Add…” button next to the “File types” list.

Enter “*.as” in the “File type” field click the OK button. The file type should now be added to the “File types” list. Make sure this new item is selected by clicking on it.

Next, click the “Add…” button next to the “Associated editors” list, which should be empty. Make sure the “Internal editors” option is selected and then select “Java Editor” from the list. Click the OK button.

The new associated editor should appear in the “Associated editors” field. Click the OK button to save and exit the Eclipse Preferences window.

Now we are going to create our MXML file that will define our application layout and appearance. It also serves as the “entry point” that the compiler uses when linking everything together. Right-click on the src folder, point to “New,” and then click “File.” The “New File” window should appear. For this tutorial, I will name the file application.mxml but this realistically can be whatever valid filename you want to give it.

The application.mxml file should now be in your src folder and the editor should automatically open. Since this is not a Flex tutorial, I will just provide a valid Flex 4 MXML skeleton that we will use to test the compiler. Enter the following into the application.mxml editor window:

<?xml version="1.0" encoding="utf-8"?>
<s:Application 
	xmlns:fx="http://ns.adobe.com/mxml/2009" 
	xmlns:s="library://ns.adobe.com/flex/spark" 
	xmlns:mx="library://ns.adobe.com/flex/mx">
 
</s:Application>

Now we are going to create our builder for this project. Right-click on your project folder (in this case, “Test Project”) and then click on “Properties” at the very bottom of the popup menu. This will open the Properties window for your project. Click on “Builders” in the list on the left side if it is not already selected. This is the pane where you define your project builders which is essentially the process of pointing to the compiler and feeding it the proper arguments.

Click the “New…” button to the right to create a new build factory. A window will open that should have “Program” selected in a list. Just click the OK button when you see this window.

This will launch the “Edit Configuration” window. You should already be on the “Main” tab but if you’re not make sure it is selected. At the very top there is a “Name” field where you can give the builder a name. Since this is a process you will have to repeat for each project you create, I recommend giving it the same name as your project so you know which builder goes to which project. In this case, I named mine “Test Project.” Click the “Browse File System…” button below and to the right of the “Location” field. Navigate to the folder where you extracted the Flex 4 SDK files and then to the bin subfolder. Select the mxmlc.exe file if you’re on Windows or just the mxmlc file with no extension if you are on Macintosh from this folder. In my case, the path was C:\AdobeSDK\Flex\4.0\bin\mxmlc.exe. Click the “Browse Workspace…” button below and to the right the “Working Directory” field. If your project folder is not already selected, select it and click the OK button. Next, you need to define the arguments that are fed to the mxmlc compiler. Enter the following into the “Arguments” field.

src/application.mxml -output=bin/application.swf -library-path+=libs/ -target-player=10.0.0

Essentially what I am telling the compiler to do is take the application.mxml file from the src folder, compile it using any available libraries from the libs folder and target the Flash 10 platform (required for Flex 4 projects), and save the compiled SWF as application.swf in the bin folder. There are many other options available to use with the compiler, but these are probably the most useful, in my opinion.

UPDATE: If you are using the Flex 4.5 SDK, Adobe is now requiring Flash 10.2 as the minimum version of Flash player. You will want to change the -target-player=10.0.0 compiler argument to be -target-player=10.2.0

After you’ve entered these options, your screen should look something like the following.

Before you click the OK button, there’s a few other options that might be handy to turn on. Click the “Build Options” tab and then look for and place a checkmark in the “Launch in background” and “During auto builds” options. This will make your project compile every time you save a file. This is useful when you need feedback from the compiler as to whether certain tags or code are valid. If you are compiling a very large SWF, these options are probably not advised.

Click the OK button and your project should now begin to compile. If you did everything right, you should see something like the following in your console output window:

Loading configuration file C:\AdobeSDK\Flex4.0\frameworks\flex-config.xml
C:\Users\Sean\workspace\Test Project\bin\application.swf (37842 bytes)

If you don’t see any errors in red, then everything compiled successfully and you have a fully functioning Flex development environment in Eclipse! Happy coding!

  64 comments for “Flex for Free: Setting Up the Flex 4 SDK with Eclipse IDE

  1. March 29, 2010 at 11:00 PM

    Excellent! Very well done!

  2. Chuck
    April 2, 2010 at 12:18 AM

    This is great Sean! Thanks for the detailed instructions.
    I was wondering if there is anyway to incorporate Eclipse’s visual design capability for building the Flex UI? Being new to the Flex, it would sure make life easier. If this cannot be done in Eclipse, are there any free Flex UI builders you can recommend?

    • April 2, 2010 at 12:57 AM

      I really don’t know the answer to that. My guess is that you would need a plugin for Eclipse that provided that capability but I’m not sure if such a plugin exists. Personally, even when I was using Flex Builder I never used the visual designer since it was so easy to do your layout directly in MXML. If you can do a layout with HTML and CSS then I’m certain that MXML won’t be a problem. Adobe’s documentation and dev center tutorials are pretty good references as well.

      If you come across a plugin that does do this though please let me know!

  3. gecklund
    April 9, 2010 at 8:48 PM

    This is pretty sweet. The other free option that would include some code highlighting and code completion is FlashDevelop. It can be a little picky to get going with it but it works.

  4. Jorge
    October 2, 2010 at 7:41 PM

    Help: I get to this portion of the directions, ” Enter the following into the application.mxml editor window:” The textbox containing what to enter is empty. Could somebody tell me what I should put? Thanks for your help.

    • October 5, 2010 at 4:00 PM

      Hi Jorge,

      Sorry for the delay in my response but I was on vacation last week and didn’t have a chance to get back to you until today. It looks like the problem was that the WP-Syntax WordPress plugin I was using for code syntax highlighting had been deactivated. I have reactivated the plugin and you should now be able to view the supplied MXML code.

      Regards,

      Sean Smith

  5. recursion
    October 26, 2010 at 12:32 AM

    Hi Sean,

    I followed the instructions but there was no auto compilation at the end. I’ve looked through and doubt I’ve missed anything.

    I’m running Eclipse 3.4 (Mylyn)
    OS – Windows 7, 64-bit

    I tried compiling from the command line and that worked. The swf file was successfully generated.

    • October 28, 2010 at 6:24 PM

      Hey, sorry for the delay in the response but did you happen to do what I mentioned in the following paragraph?

      “Before you click the OK button, there’s a few other options that might be handy to turn on. Click the “Build Options” tab and then look for and place a checkmark in the “Launch in background” and “During auto builds” options. This will make your project compile every time you save a file. This is useful when you need feedback from the compiler as to whether certain tags or code are valid. If you are compiling a very large SWF, these options are probably not advised.”

      This is from above where it describes setting up the builder for the project. The “During auto builds” option is what you want to check off under the “Build Options” tab when configuring the builder. It appears I didn’t post a screenshot for that tab but the option is pretty easy to find on that page. I’m also running Eclipse 3.4 but Ganymede on Windows Vista 64-bit. I’m not sure what “Mylyn” is, honestly.

  6. recursion
    November 1, 2010 at 10:07 PM

    Everything is as stated in the blog. What I just did however, was to check “Build Automatically” from the Project menu and that appears to have done the trick.

    I had noticed differences with this version of Eclipse when doing Blackberry development as the menus were not as outlined in the material I was using as a guide. Maybe I should switch to a clean set up.

    Besides automatic building, are there any other benefits I should expect from using eclipse like intellisense or syntax highlighting?

  7. recursion
    November 2, 2010 at 10:02 AM

    Ok, I downloaded the latest version of Eclipse for PHP developers. The inclusion of WebTools, from what I’ve been reading, should give me some added benefits. Thanks for getting me on the right path.

  8. douglas
    November 2, 2010 at 12:27 PM

    Thanks for the great tutorial. I’ll be setting this up tonight and this looks very helpful.

    I was wondering if there was a way to get the debugger to work as well? I tried using the command line debugger in the past and it wasn’t much fun! Can this also be integrated into Eclipse?

    • November 2, 2010 at 12:40 PM

      Hi Douglas,

      When you compile it in Eclipse, you can see the compiler output in the “Console” pane within the Eclipse environment. This will notify you of compiler errors which is what I usually use when debugging. Other than that, I typically debug in my code by using Flex popup windows from with the code via the mx.controls.Alert class by doing:

      import mx.controls.Alert;
      // … code …
      Alert.show(someValue.toString());

      Not quite as elegant as being able to do a trace() right into its own debugger window but it gets the job done. Some of these reasons are why Flash Builder (formerly Flex Builder) is a somewhat more elegant solution.

  9. seeker7805
    December 12, 2010 at 4:05 AM

    Thanks for this article Sean. It is helping me a lot.
    I have run into a problem trying to run a project. I get this error message “The selection cannot be launched, and there are no recent launches.” I am running Eclipse and Flex4sdk on windows xp, following “learning flex 4″ . Thanks in advance for your help.

    • December 16, 2010 at 12:37 PM

      In reality, I don’t think you can really create a “launcher” in Eclipse for your Flex project although I could be wrong. The way this tutorial sets it up is it will basically only compile and build your code into a SWF file but that it’s up to you to take that SWF file and embed it into an HTML page to view it. I normally have an “index.html” file in my project’s bin folder that uses SWFObject to embed the compiled SWF into the page and I simply refresh this page from within my browser after each compile to see the changes I’ve made in action. Keep in mind, however, that you may have to add the location of this HTML file to your Flash Global Security settings as an allowed exception if running it locally as Flash typically does not like to allow local “sandboxed” SWF files to reach out to the internet for security reasons. For more information (and to add an exception to the file), see here: http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html

  10. December 24, 2010 at 9:49 PM

    Hi Sean, Your instructions gave me a huge relief as I
    couldn’t find a better simpler one :) I did all the steps as
    mentioned by you (I am using Eclipse EE Helios SR1 with Flex SDK
    4.1). I am getting the following error in the console- Error
    loading: C:Program Files (x86)Javajre6binclientjvm.dll How do
    I proceed further? Thanks in advance, Raghav

    • December 26, 2010 at 6:43 PM

      Hi Raghav, I’m not sure why you are getting this error but
      it sounds like something is missing from either your Java or
      Eclipse installation. The Flex SDK, to my knowledge, is not based
      on Java but Eclipse is so I would maybe try a different version of
      Eclipse or try updating or reinstalling Java. The error seems to
      indicate that the jvm.dll file is either missing or corrupt. I hope
      this helps.

  11. BDM
    December 26, 2010 at 6:13 PM

    Hi Sean, Great article! Am using WINXPSP3, Eclipse for PHP
    Developers Build Build id: 20100917-0705 and the tutorial worked
    exactly as it should. The only issue is in the TestProject tree,
    there is no .swf file in /bin however if I go to
    c:adobesdkinstall_pathbin the .swf exists. Any ideas?

    • December 26, 2010 at 6:45 PM

      I would double check the command line arguments for the
      builder you set up. It sounds like perhaps your -output path is
      incorrect or you skipped the step where you needed to select your
      “TestProject” project for the builder environment.

    • August 30, 2012 at 12:52 AM

      Its just simple. If you select your bin folder and right click on it to “refresh” it, you may find the swf file there in the tree. (Applies only if you haven’t gone wrong in output path)

  12. December 29, 2010 at 11:26 AM

    Sean, Im new in Eclipse, since i wanted to start working in
    Eclipse and i have a PHP background, I installed Eclipse Helios,
    and I’m very familiar developing in Flash, since my interest is on
    Flex apps, well, i have been reading online and pretty much you are
    the only one that shows for the newbies how is done, Flex compiler
    and PHP eclipse, but when i start to follow the instructions, and
    creating the “New Project”-“General”-“Project”- then “Next” then
    name of the project and “OK” I see that you have the folders where
    is going to be some of the code and other files like this
    folders… “bin, libs, scr” in my case are not generated on my
    project, shows the main folder project name, i follow the rest, but
    with no success, so I’m thinking right away I have something
    missing…do you have any idea? Thanks :)

    • December 29, 2010 at 11:46 AM

      Hi Jesus,

      I created the bin, libs, and src folders manually after I created the project in Eclipse. Just right-click on the root folder for your project inside of Eclipse and choose “New -> Folder.”

  13. herambnaria
    May 10, 2011 at 12:47 AM

    hI Sean…

    thanks for the tutorial ….. i just wanted to know if it is possible using the same tutorial to create iphone apps using the flex SDK

    thanks …

    • Sean
      May 17, 2011 at 11:46 AM

      Hi, sorry but unfortunately iPhone apps (officially) need to be developed using Apple’s own Xcode development environment on a Mac. There are other IDE environments out there that claim to allow you to develop on other platforms such as Windows (a quick Google search for “develop iphone apps without xcode” will yield some results) but the problem is that Apple can ban the submission of apps created with these tools at any time they wish. To answer your specific question about using Flex, no it is not possible. Flex is based on ActionScript (an Adobe language) which is an entirely different language from Objective-C, the language Apple wants you to use to write native iPhone apps.

    • tabnaka
      June 7, 2011 at 1:25 PM

      Yes, it’s possible. Although Apple is battling the implementation of Flash in its web browser, it does allow Adobe AIR applications. So you can use Flex (written in ActionScript) or the Flash Professional tools to develop cross-platform AIR apps. For a while Adobe made available beta versions of the iPhone (and Android) SDK, but I think they took one or both of them offline to get ready for an official release. One downside to using the Adobe development environments is that they do not yet support widgets and lack some capabilities that the xcode has. Check out the book Flash Mobile by Matthew David. It focuses on Flash Pro and not Flex, it’s helpful nonetheless.

      • Sean
        June 8, 2011 at 9:13 AM

        @tabnaka – You’re right in that there was/is a tool for compiling ActionScript 3 code for Flex/AIR into native iOS code (Objective-C) but I’m still not sure if Adobe is officially supporting this. When they initially released it, Apple had a fit and changed their developer terms to ban apps written with any “cross-platform compilers.” However, I did hear at some point they changed the terms again to allow applications compiled in this manner but I haven’t heard anything about it since.

  14. bsides
    June 6, 2011 at 5:22 PM

    I keep getting this error:

    C:AdobeSDKFlex4.0frameworksflex-config.xml(56): Error: unable to open ‘libs/player/10.0/playerglobal.swc’

    Any ideas why? I’m using windows 7 on a 64bit machine.
    Thanks in advance for any help you can provied.

    -bsides

    • Sean
      June 8, 2011 at 9:10 AM

      @bsides – Typically an “unable to open” error indicates that the file it was looking for wasn’t found at the specified location. I would double check that you have the playerglobal.swc file in a “libs/player/10.0″ subfolder off of your SDK install location.

    • luzaranza
      June 11, 2011 at 1:44 PM

      hi, I just had same prob with flex 4.5 installed, and found that it can be solved by changing the target player in the mxmlc compiler config to:
      -target-player=10.2.0
      I guess there’s config.xml in the sdk directory that reads this and uses it as a minor version directory (2 not 0) when searching for the .swc file

      • Sean
        June 11, 2011 at 10:50 PM

        Thanks, I remember reading that Flex 4.5 was going to require Flash 10.2 as the minimum required version. I will update the post to reflect this detail.

    • August 30, 2012 at 1:00 AM

      Just check out the version of Flash you have installed on your machine. Also, look for the file “flex-config.xml” inside the “frameworks” folder of your Flex SDK. Check out the tag 11.1. In my case it was 11.1.0

      Now match this player version with the Builder configuration you have given in your project in the “argument” section. It will solve the issue.

      Although Sean had done a magnificent job and had written a very clear implementation of Eclipse Flex, some novices are finding some problems including me. I request Sean to take them patiently (which perhaps he is already doing).

  15. dvd63
    June 8, 2011 at 7:20 PM

    Putting
    package { …etc
    just before the
    I get this message:
    /Users/davidblake/Documents/workspace/test project/src/testGame.mxml(4): Error: Could not resolve to a component implementation.
    Comment?
    xmlns:mx=”library://ns.adobe.com/flex/mx”>

    • dvd63
      June 8, 2011 at 8:39 PM

      I guess relevant questions are:
      1- am I right to assume code goes just before last line
      2- will eclipse/flex recognize AS3 package{ } code
      ?
      3- if not, how do I specify it?

      • Sean
        June 9, 2011 at 12:43 PM

        You should be able to compile with any sort of AS3 code as long as it is properly linked. I’m not sure what you meant by “before the last line” though. Can you be more specific? In the example I gave, your initial code would go in the MXML file that you point the compiler at. From inside that, you can reference a separate .as file using the mx:Script tag that can contain your logic code.

  16. dvd63
    June 10, 2011 at 3:41 PM

    I apologize for the truncated text.
    To get right to it,
    This works:

    package {
    }

    this doesn’t:

    package {
    trace(“trace is working”);
    }

    /Users/davidblake/Documents/workspace/test project/src/application.mxml(7): Error: Syntax error: expecting identifier before rightparen.

    • dvd63
      June 10, 2011 at 9:21 PM

      I’m going Back two steps – I got ahead of myself. I will get up to speed compiling AS3 from the command line before I push into Eclipse as an IDE.

      • Sean
        June 11, 2011 at 11:13 PM

        I replied to your other comment… it sounds like the code you’re using is the problem. I think an empty package such as
        package {}
        will compile but when you are trying to do
        package { trace("trace is working"); }
        it’s expecting to find a class definition and not inline code. In the .as file you’re referencing in the mx:Script tag, try just putting the trace call without the package declaration around it and it will probably compile. However, you probably won’t be seeing the trace calls in the console for Eclipse if memory serves me correctly. I typically used the Alert Flex class to show popup alerts of data. Consider the following:
        import mx.controls.Alert;
        private var myNumber:Number = 17;
        Alert.show('My number is: ' + myNumber.toString());

        This small snippet creates a number variable and assigns the value 17 to it and then uses the Flex Alert class to show a modal popup with the message “My number is: 17″

  17. dvd63
    June 10, 2011 at 3:57 PM

    without waiting for your reply (as my prior comment did not reflect utilization of your first reply) —
    using where trace.as contains ‘package { }’ (no quotes)
    I got: /Users/davidblake/Documents/workspace/test project/src/application.mxml(6): Error: Could not resolve to a component implementation.

    • Sean
      June 11, 2011 at 10:49 PM

      Is that all you had in the file was an empty package? The error is probably complaining that you haven’t defined a class inside of it.

  18. dvd63
    June 10, 2011 at 3:58 PM

    sorry about the truncations
    it’s not me
    it’s your comment text box

  19. dvd63
    June 10, 2011 at 4:00 PM

    repeat:
    using ”

  20. dvd63
    June 10, 2011 at 4:01 PM

    again:
    using mx:Script source=”trace.as”

  21. dvd63
    June 10, 2011 at 4:04 PM

    I dislike that Can you set the profile to allow users to delete their own comments?

    • Sean
      June 11, 2011 at 10:47 PM

      I’ve looked under the WordPress Discussion settings and haven’t seen an option that would allow this. I’ve noticed there are different roles though but have been unable to find where the roles are defined. I’ll continue to look into it.

  22. R_Scott
    June 28, 2011 at 10:56 AM

    Great tutorial, Sean! The only differing output I rec’d in my console was:
    Loading configuration file C:Userssharringtonflex_sdk_4.5.1frameworksflex-config.xml
    Required RSLs:
    http://fpdownload.adobe.com/pub/swz/flex/4.5.1.21328/framework_4.5.1.21328.swz with 1 failover.
    http://fpdownload.adobe.com/pub/swz/tlf/2.0.0.232/textLayout_2.0.0.232.swz with 1 failover.
    http://fpdownload.adobe.com/pub/swz/flex/4.5.1.21328/spark_4.5.1.21328.swz with 1 failover.
    C:UserssharringtonworkspaceJavaDevTestFxProjectbinapplication.swf (41373 bytes)
    But, after doing a right-click on my project folder –> Refresh, I have a .swf listed in my /bin and will embed it in .html to see if it works.
    Also, just FYI for anyone else coming to this late, you now need to add the PHP module from within Eclipse – the PDT package is no longer maintained.

  23. July 7, 2011 at 7:01 PM

    Hi there and thanks for the step by step tutorial. The first time I got this error (G:AdobeSDKFlex4.0frameworksflex-config.xml(56): Error: unable to open ‘libs/player/10.0/playerglobal.swc’) and realzed there was write permissions set on my external drive. moved it all to my local c: drive but now I get
    this:
    Loading configuration file C:UsersJohanDocumentsFlexflex_sdk_4.5.1frameworksflex-config.xml
    Required RSLs:
    http://fpdownload.adobe.com/pub/swz/flex/4.5.1.21328/framework_4.5.1.21328.swz with 1 failover.
    http://fpdownload.adobe.com/pub/swz/tlf/2.0.0.232/textLayout_2.0.0.232.swz with 1 failover.
    http://fpdownload.adobe.com/pub/swz/flex/4.5.1.21328/spark_4.5.1.21328.swz with 1 failover.
    C:UsersJohanflexworkspaceTest Projectbinapplication.swf (41373 bytes)

    Any ideas? I’m using Eclipse (classic)3.7 and flex 4.5.1

    cheers

    Johan

    • Sean
      July 9, 2011 at 2:49 PM

      Hi Johan,

      This is the first time I’ve seen those kinds of errors. Are you compiling against Flash 10.2? I noticed you’re using the Flex 4.5 SDK but the original error you were getting appeared to say Flash 10.0. Make sure your compiler argument is set to -target-player=10.2.0 instead of 10.0.0 when using Flex 4.5. Hope this helps.

      Sean

      • ThePlatypus
        July 11, 2011 at 1:17 AM

        Sean,
        I came across this post when searching for an answer to the same error message when compiling. Thanks for posting this tutorial up, it looks great. I’m using Flex 4.5 SDK for Flash player 10.2.0 on Fedora Core 14. I tried your suggestion of adding the -target-player=10.2.0 (and -target-player 10.2.0). I still got the same message. I don’t think it’s an error message though. If I understand the page I found on Adobe’s site correctly, it’s just telling you what RSLs are required and ‘with 1 failover’ just means that it’s got a backup URL in case it can’t load from Adobe’s site.


        Viewing required RSLs

        By default the compiler outputs a list of RSLs that an application uses. This is viewable in the command line compiler’s output.

        The following is an example of the output from an application that loads the framework, textLayout, spark, sparkskins, and osmf RSLs:
        Required RSLs:
        http://fpdownload.adobe.com/pub/swz/flex/4.5.0.17356/framework_4.5.0.17356.swf with 1 failover.
        http://fpdownload.adobe.com/pub/swz/flex/4.5.0.17356/textLayout_2.0.0.139.swf with 1 failover.
        http://fpdownload.adobe.com/pub/swz/flex/4.5.0.17356/spark_4.5.0.17356.swf with 1 failover.
        http://fpdownload.adobe.com/pub/swz/flex/4.5.0.17356/osmf_1.0.0.16316.swf with 1 failover.

        The list of required RSLs displays the expected location of the RSLs at runtime. In this case, the expected location is the signed SWFs available on Adobe’s website. The output also notes that there is a failover location in case the Adobe RSLs are unavailable. You can see this location in the flex-config.xml file.

        Note that if static-link-runtime-shared-libraries option is set to true, then no RSLs are listed because they are not used. Static linking is used instead.

        Disabling RSLs

        You can disable RSLs when you compile your application by setting the static-link-runtime-shared-libraries compiler option to true.

        In general, disabling RSLs is useful only when compiling style SWF files, resource bundles, or other non-application assets.”
        http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf674ba-7fff.html#WS19f279b149e7481c-152c7c012d9aabe32a-7ffd

        • Sean
          July 11, 2011 at 7:51 AM

          Thanks for the info. I did notice that it looked like it still compiled the swf for the previous person that had the same message. I will have to try compiling against 4.5 myself and see if I end up with the same message. Could you share the link to the Adobe page you found regarding those messages about the RSLs?

  24. zak
    July 25, 2011 at 9:18 AM

    I’ve followed the instructions but i get the following error on building “test project”

    Unknown argument: src/application.mxml -output=bin/application.swf -library-path+=libs/ -target-player=10.2.0
    Buildfile: C:Program FilesAdobeFlex Builder 3 Plug-insdks4.0.0binmxmlc.exe

    BUILD FAILED
    C:Program FilesAdobeFlex Builder 3 Plug-insdks4.0.0binmxmlc.exe:1: Content is not allowed in prolog.

    Total time: 94 milliseconds

  25. July 27, 2011 at 1:29 AM

    nice , this guide works on OS X Leopard PowerPC with eclipse php galileo sr2 carbon. I had to use the flex sdk based on version 4.0 or 4.1 cause the sdk 4.5 target to player 10.2.0 didn’t run the swf. Also the latest flash player us PPC users can install is 10.1.102.64.

  26. August 30, 2012 at 1:26 AM

    Magnificent article Sean. I gone through all the steps and successfully achieved the output (fortunately though).

    I was actually looking for two more solutions if you know, kindly help me with this:

    1. I am developing an esri map application in flex. Now using the same xmlns tags for esri as I used in Flex Builder doesn’t work in Eclipse. What I am missing here?

    2. Is there any plugin which may allow intellisense as that of Flex Builder?

    # I am using Flex Builder 4.6 Premium, Eclipse Version: 4.2.0, Flex SDK 4.0 and ArcGIS 9.3.

    • Sean
      August 30, 2012 at 10:11 AM

      1. I’m not familiar with ESRI but I’m assuming that it provides a library for you to use. I believe you’ll need to make sure that the library file(s) are included in the path you specified in your “libs” parameter. Also, do you have the xmlns namespaces defined in your <s:Application> tag?
      2. To my knowledge, there was no plugin available for intellisense-style completion when I wrote the article. There may be one now but unfortunately I can’t say for sure. If you come across one, please feel free to post here again and share it with everyone.

      To be honest, I haven’t used Flex in quite some time now because the company I work at has become very focused on using HTML 5 over anything that’s Flash-based. Since HTML 5 can now perform video, audio, 3D and webcam capabilities (via the WebRTC standard) it seems as though Flash is becoming less and less necessary in this day and age.

  27. August 31, 2012 at 12:14 AM

    Yeah Sean, you were absolutely right. ArcGIS provides a library. One may get it here:

    http://links.esri.com/flex-api/latest-download

    This swc file need to be copied in the “frameworks\libs” folder of the Flex SDK. xmlns were already there in my app.

    Wished for the intelli-sense plugin. Anyways it may come/developed soon when good developers like you find time :).

    Yes, I also got diverted to HTML5 few days back but due to proper direction and not exactly knowing its scope I was unable to invoke my interest.

    Thanks for everything.

  28. AymenRM
    October 14, 2012 at 3:48 PM

    i have this output :

    Adobe Flex Compiler (mxmlc)
    Version 4.6.0 build 23201
    Copyright (c) 2004-2011 Adobe Systems, Inc. All rights reserved.

    E:\Flex46SDK\frameworks\flex-config.xml(56): Error: unable to open ‘libs/player/11.4/playerglobal.swc’

    • Sean
      October 15, 2012 at 9:46 AM

      Have you verified that the file exists? Based on the path given in the error message, it looks like it’s looking for it in E:\Flex46SDK\frameworks\libs\player\11.4\playerglobal.swc

  29. arifwic
    October 20, 2012 at 1:17 AM

    For Flex 4.6 and Eclipse 4.2.1, I’ve modified the configuration to:

    http://i1321.photobucket.com/albums/u558/arifwic/Flex_46_SDK_zpsc0c70996.png

    And it’s all okay.

  30. Winson Chellappa
    November 28, 2012 at 2:27 AM

    Hi,

    Is it possible to pet in some logger info so that we can see till what level the execution is completed.

    Thanks
    winson

    • Sean
      December 3, 2012 at 10:31 AM

      Hi Winson,

      I’m assuming what you’re talking about is a way to log events in the code or do you mean a debugger that will show you where in the code the execution has reached if it throws an exception? If you mean the latter, I don’t think it’s possible with this setup. In fact, because Flex applications are compiled, I’m not sure it’s possible at all. I don’t remember Flex Builder having this option but it’s been years since I’ve used it and I could be wrong.

      If you’re talking about the former, there appears to be a logging API that you can use. Please refer to http://livedocs.adobe.com/flex/3/html/help.html?content=logging_09.html — it’s not something I’ve ever used myself, however. When I was still using Flex, I used to use the Alert class to show important information during my debugging process which also gave an idea of where the execution was reaching. You would use it as follows:

      import mx.controls.Alert; // Make sure you import the class first

      // … your code …
      Alert.show(“The value of x is: ” + x.toString()); // Show an alert dialog with whatever data you want to see
      // … more code …