Building from sources

Cooee Structure

Cooee modules on svn repository is organized as follows:

  • core - the core library from Cooee, it agregates the old echo2, echo2extras and echopointng libraries.
  • demo - the demonstration app for core funcionalities.
  • sandbox - where all new contributors code goes in before going to core. Sandbox code, while supposed to be free of compile errors, is not stable enough to go to core, either because of lacking of unit tests or because no reviewer has approved the code yet.
  • sandbox-demo - demonstration app for sandbox funcionalities.

Cooee uses Maven

Maven is an open-source software project management that is becoming the new standard build tool for Java. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information. If you are new to Maven, you can start here.

By this time, Maven is used in all modules under Cooee structure to perform day-by-day development tasks like compiling, running tests, packaging and deploying, as well as handling library dependency issues.

In order to simplify modules dependencies management and group shared information in a single configuration file, Cooee uses multi module configuration.

Getting started

If you want to start digging into the code and running any of Cooee modules, follow these steps:

  • install java sdk version 1.5.* (1.6 not supported)
  • install Maven version 2.0.4 or higher
  • if you want to try the app demos on Tomcat, you'll need tomcat 5.5 installed.
  • get the desired module from svn repository. For example, for core-demo it would be like:

    $svn co http://svn.karora.org/repos/cooee/trunk/demo

  • build the project

    $cd demo
    $mvn compile package

Maven will compile and run Junit tests. That's it! Now either immediataly run cooee-demo into Jetty container inside Maven or deploy cooee-demo-0...war into Tomcat. 

To run on Jetty, just type:

    $mvn jetty:run

To deploy on Tomcat,  just copy the .war to \${TOMCAT_HOME}/webapps and restart Tomcat, or follow some simple instructions to get maven deploying for you:

    $mvn tomcat:deploy (from demo directory)

In both Jetty and Tomcat Maven procedures, the address will be shown in the end of building process.

Instructions for Eclipse users (supported versions: 3.2.1 and 3.2.2):

Pre-requisites
Checking out modules

In Repository Browsing perspective --> Add SVN Repository, copy this URL:

http://svn.karora.org/repos/cooee/trunk

Browse into directories and checkout the desired modules. For that, right click on the desired module directory and choose "Checkout".
Now you should be able to see the module when switching to java perspective.

Labels

 
(None)