Sharing Flex Projects
We've got 5 developers all working on the same Flex based project. What's the best way to share the project so everyone can work on it together? (I don't mean a version control system, I mean the actual Flex project).
We tried checking into version control and all using the same .project, .actionscriptProperties, and .flexProperties files, but that was a disaster. Flex likes to open them for read/write and make little modifications at seemingly random times. Then merging changes between developers sucks.
What we do now is each developer creates their own Flex project outside of version control.
Then we link in the src folder of our application into our project. (In eclipse you can make a link to another folder by selecting "new folder" then clicking the advanced checkbox) ... see the picture:

Next, we set that src folder as the default source folder of the project.

Then we delete the .mxml that flex builder auto-created for us when we made the project since we don't need it anymore.
Then we set-as-default application our main mxml file.
We use a few external libraries, so we also add a swc folder under our project's build directory.
It seems to work pretty well. We even have some people using FB2 and some on FB3 using this technique. How do other people handle this?
For those of you following the AgileAgenda progress, two new screenshots of the web-view:
http://www.agileagenda.com/screenshots/screenshot8.JPG
http://www.agileagenda.com/screenshots/screenshot9.JPG
We tried checking into version control and all using the same .project, .actionscriptProperties, and .flexProperties files, but that was a disaster. Flex likes to open them for read/write and make little modifications at seemingly random times. Then merging changes between developers sucks.
What we do now is each developer creates their own Flex project outside of version control.
Then we link in the src folder of our application into our project. (In eclipse you can make a link to another folder by selecting "new folder" then clicking the advanced checkbox) ... see the picture:
Next, we set that src folder as the default source folder of the project.
Then we delete the .mxml that flex builder auto-created for us when we made the project since we don't need it anymore.
Then we set-as-default application our main mxml file.
We use a few external libraries, so we also add a swc folder under our project's build directory.
It seems to work pretty well. We even have some people using FB2 and some on FB3 using this technique. How do other people handle this?
For those of you following the AgileAgenda progress, two new screenshots of the web-view:
http://www.agileagenda.com/screenshots/screenshot8.JPG
http://www.agileagenda.com/screenshots/screenshot9.JPG
Labels: flex
5 Comments:
Same as you. You check in:
1. code (aka src directory)
2. libraries (aka lib directory)
3. assets (aka src/assets) directory (flash, images, css, etc.)
We do not check in:
1. the . property files; these are specific to the Flex project and the box they are running on
2. the bin directory
3. the html-template directory
Now, lately, we've been checking in html-template directory as more and more projects become "our Flex app in other's sites". This, combined with ANT scripts allows us to have multiple HTML views to our Flex app.
By
Anonymous, At
7/26/2007 10:54 AM
Hi. I am so glad to read your post. I have felt your EXACT pain on an enterprise project earlier this year.
I know do what you do, a project per developer with a main application file, outside of version control.
What I recommend is to have that main application file extend a class in your source control'd that you all share, so there is little in the actual main application file that requires updating per-person manually.
Then you can
By
Anonymous, At
7/26/2007 10:56 AM
Glad to hear others do it similarly.
For our "main" mxml application, we just have a single component in it that is in our source tree. Accomplishes what Srivello said but with composition instead of inheritance.
By
Marc, At
7/26/2007 11:06 AM
Someone has to be the disenting voice, so it might as well be me :-)
We do check in the .project, .actionScriptProperties and the .flexProperties files. I'll stop short of saying that there is nothing developer-specific in those files, but our 5+me team hasn't seen anything. For example, the .flexProperties file is a 1-liner for us. We have a main <mx:Application/> app, then we write many different <mx:Module/>'s for each sub-system. Each module has its own CLASSPATH- the purpose of the .actionScriptProperties. With just a little knowledge of Eclipse it is a walk in the park to configure a variable for your pathing. As a result, each developer has their projects checked out to different locations, some on different drives. Yet we all work successfully with svn controlled versions of these files because we let Eclipse manage the connection.
Conceptually, it is no different the J2EE's deployment descriptors. The deployer is responsible for the final linking of the pieces and parts, e.g. database pools, etc. to the web app. In this case, it is the developer who links the variable to their unique infrastructure.
To see my blog posting on how we configure eclipse, check out http://flexguy.blogspot.com/.
Beadle Fox
By
Tacoma Four, At
8/02/2007 5:13 PM
We have lots of projects we share among everyone in our developer group and we check in the Eclipse files as well. I don't think we've run into any major problems at all. From time to time I notice that various developer's Eclipse installations will change the order of items within a property file but other than that its been ok.
By
Unknown, At
8/02/2007 8:30 PM
Post a Comment
Subscribe to Post Comments [Atom]
<< Home