====== How to compile Starling with Maven ====== ===== Introduction ===== Unfortunately, we don't have a maintainer for the Maven build system any more. Thus, I had to [[https://github.com/Gamua/Starling-Framework/commit/453aeef3fa65b1e4d50602b47f80726427d62ed4|remove]] the "maven" build files from the repository — rendering the tutorial below rather useless. If you want to see Maven return, any help is welcome! Maven is a powerful build system, like Ant, but it's more universal, with strict workflow and build phases. Furthermore, it supports dependency management out-the-box. Flex Framework, Robotlegs, as3commons and many other libraries are available via public repositories, and there is no need to collect ''*.swc'' files in some awful-always-growing "libs" folder. BTW, the Flex compiler is also a dependency, just recall your "sdk" folder, with 4.5.1, 4.6, 4.1.0 and other flex frameworks --- all of that now can be deleted, yay! ===== Compiling Starling with Maven ===== - Install Maven3 :-) there are many tutorials on it, and there is no difference between the installation of ant or maven, i swear ;) (Official site: [[http://maven.apache.org/|maven.apache.org]]) - cd into the Starling root folder - to compile it, run mvn --file starling/build/maven/pom.xml compile - That's all! The SWC file will be placed at **''starling/build/maven/target/''** ===== Using Starling as dependency in your Maven projects ===== If you use Maven, you already know, how easy to attach Starling to your project, but i will remind you! :-) - Configure the repository: starling-repository http://repository-trylogic.forge.cloudbees.com/snapshot false true - configure the dependencies: com.gamua starling-framework [1.2, ] swc - Done! Easy, huh? ===== Where to go from here ===== * The main benefit for Maven is to simplify the build process and support Continuous Integration. You can find the current build server (Jenkins) for Starling [[https://trylogic.ci.cloudbees.com/job/StarlingFramework/|here]]. * All build artifacts are deployed to [[http://repository-trylogic.forge.cloudbees.com/snapshot|public repo]], you can use it in your Maven (or Ivy, for example) projects anytime you want. * Maven support will be improved in future, here is my little road-map: - Configure tests (it's not easy, because it requires Flash Player on build server, but cloudbees supports it, AFAIK) - create own account for Starling at cloudbees (or something similar) - ask Daniel to place pom.xml in root of repo :-D