So I have wanted to play with Macromedia Flex on my laptop for a while now. This afternoon I finally decided to spend a few minutes and get it going on OS X 10.3.3, and it was relatively painless. Here are the steps I took which should get you going in less than 30 minutes, less than 10 minutes if you have everything at your fingertips.
Here is a screenshot of the Flex Samples Explorer in Action running locally on my laptop.
1) Mac OS X 10.3.3 (This is what I tested and executed these steps on a 15 inch 1.25ghz Aluminum Powerbook) with the developers tools installed from the Xcode CD
2) Mac OS X 10.3.3 Xcode CD (Intall the developers tools and specifically install the ‘ApplicationsServerDev.pkg’ found on the Xcode CD. This will install Tomcat 4.1.24-LE-jdk14 (Caveat: Macromedias notes indicate Tomcat 4.1.29 as a requirement – I havent noticed anything yet, but I have only been running it since this afternoon, if I find any issues I’ll post here. Its easy enough to download and compile the source for Tomcat 4.1.30, but the package on the Xcode CD is simply one click installer)
3) Macromedia Flex 1.0 Trial Installer (PC, Linux or Solaris)
4) Access to a Linux box, a Solaris box or a Windows Server box (In order to get the flex.war and samples.war files and other support files)
UPDATE April 14: Thanks to some info I found at Robbish via a Google search for “macromedia flex on mac os x” which cover getting Flex to work with JBOSS on OS X, I learned about a command line option for unzip that I had never utilized before, -d. By using this argument it forces unzip to ignore the shell script portion of the first part of the self extracting Flex installer. Thus negating the requirement for access to a PC running Linux, Solaris or Windows. So you can skip steps 1-7 by issuing this command from a terminal prompt in Mac OS X:
unzip -d flex flex-10-lin.bin
This will extract all the files (particularly the flex.war and samples.war) needed to get things going. Youll find them in the “dist” folder as .zip files. Grab the flex.war.zip and the samples.war.zip and unzip them. No you can feel free to skip steps 1-7. Also check the NOTES at the bottom of this entry for some links to important technotes regarding using Flex on OS X.
1) Get access to a PC running either Linux, Solaris, or Windows and launch the appropriate Trial installer or see note above added April 14th to skip right to step 8.
2) Accept the License Agreement.
3) Skip the serial number information to go into trial mode (I dont own Flex, so I’m using this in Trial/Developer mode with no serial number)
4) The installer will ask if you already have an existing Java Application Server or if you would like to Intall Flex with JRUN. Skip the JRUN install and just do the Macromedia Flex without JRUN option. We just want the .war files from the Flex Installer.
5) Allow the installler to do its thing.
6) Once the install has been complete, locate the Flex folder or path where everything has been installed. We really only need the flex.war and the samples.war files in the root of the Flex folder, but for fun, just go ahead and .zip or or tar/gzip up everything in that folder.
7) Transfer this archive over to you Mac OS X 10.3.3 machine and extract the flex.war and samples.war
8) If you havent already installed Tomcat from the Xcode CD (see requirements above) go ahead and do so now.
9) Locate where Tomcat was installed, default for the Xcode installer is:
10) Go ahead and startup Tomcat to make sure its working (Make sure you also have Personal Web sharing On (Preferences > Personal Web Sharing > START) Now startup Tomcat from a terminal command prompt:
You should get something like this:
Using CATALINA_BASE: /Library/Tomcat
Using CATALINA_HOME: /Library/Tomcat
Using CATALINA_TMPDIR: /Library/Tomcat/temp
Using JAVA_HOME: /Library/Java/Home
11) By default Tomcat should answer on port 9006. Test it by firing up a browser and going to: http://localhost:9006
(You can check to see which port tomcat is really running on by issuing the following command from a terminal command promt:
cat /Library/Tomcat/logs/catalina.out | grep ‘on port’ | tail -1
Go ahead and browse to the default location substituting the correct port # your copy of Tomcat is running on. If you see the default Tomcat info your in luck, just a few more steps.
12) Go one level deeper in the Tomcat folder hierarchy to the webapps folder
Now make two new folder in this structure:
13) Move the flex.war into the new flex folder you just made:
14) Do the same with the samples.war by moving it into the flexsamples folder
15) Now from a terminal prompt navigate to the new flex folder where you just moved the flex.war file and issue the following command:
jar -xvf flex.war
This will extract all the flex files and settings.
16) Do the same for the samples.war
jar -xvf samples.war
This will extract all the sample files and settings.
17) Now restart Tomcat:
18) Now that Tomcat has restarted try accessing the working sample files by going to:
and try out one of the example files like the XML Data Feed or the Flex Samples Explorer.
If they work, you are in luck and off to the races with Flex on OS X, congratulations! Sweet!
1) I don’t believe this is an officially supported platform for Flex, so your on your own as far as support is concerned, but here is a good reference page from Macromedia that has some tech notes and other info about installing Flex which I used as a reference when getting this going:
2) I haven’t even played with this for very long yet, I wanted to share this info with others to see if there are any caveats and because I was curious to see wether it would work properly or not. So far so good! I am still fairly new to Flex as I haven’t had as much time to play with it as I would like, but now that its on my laptop, I plan on doing a lot more with it and digging in to it.
3) If you would like to run the command line Flex compiler on OS X, make sure you read this http://www.macromedia.com/support/flex/ts/documents/mac_cmd_compiler.htm to help you get things going.
I’d love to hear other comments about your experiences getting this going on your Mac OS X machines.