Recommended project structure for a Flex build

I am starting a new project using Flex3 for a fairly complex UI getting its data from a collection of RESTful web services. I am wondering what experiences others have had when structuring a moderately complex Flex project. The questions I am thinking of include:

  • I want to use our FlexBuilder licenses to visually edit layouts and debug code on Eclipse
  • auto build script so that we can use the CI server
  • testing strategies, in particular automated unit tests
  • cross-platform development environments for Linux and Windows (yes, I know the Linux version of FlexBuilder doesn't do visual editing, but everything else should ideally work cross-platform).
  • dependency management, at least for Java code (are there any library dependency libraries for Flex?)

I just burned a day trying and unable to get the maven2 / flex / jetty plugin working smoothly (based on Jeff Maury's tutorial ). I'm not dead - against using Maven as we go along, but I'm sure there should be a less painful route. The main problem I ran into (other than the fix in maven) is that the maven "single artifact per build" Rule means you have to jump over many complex build hoops and I am missing the maven initiator to avoid traveling on the hoops and fall on my face!

Will Ant and Ivy be better than maven2? What other options are there?

+1


source to share


2 answers


I don't know Flex development, but I know CI, so I'll comment on that aspect.

I am working on CruiseControl to use what I am using (when you are not being paid to install something else). There are also blog posts describing setting up Flex projects under CC for Windows and Linux . CC has been around for a long time, so there is a large user community and many third-party tools that work with it.



But other people are more likely to recommend Hudson , and it would be hard to argue against them. Hudson is very easy to get up and running and has a nice web interface. This project is very active, has a lot of fans and a lot of buzz, and matured very quickly. I have nothing to say about this. This blog post describes how to run acceptance tests under Hudson .

I don't know enough about Maven to offer advice there, but I'm currently working with Ivy on the client and I really love it. We have a mix of Java and C ++ code, and we can get Ivy to do what we want.

+2


source


Well we are using maven. With a few different web styles, I have an enterprise application that is built with maven.

This article via adobe really helps a lot.
http://www.adobe.com/devnet/flex/articles/fullstack_pt1.html
http://www.adobe.com/devnet/flex/articles/fullstack_pt2.html
http://www.adobe.com/devnet/ flex / articles / fullstack_pt3.html



You really need a common config project that will be shared by both flex and java, and possibly your C ++ code. This article explains how to install everything.

Downstairs if you are not familiar with maven, there is a little learning curve.

+1


source







All Articles