Requirements
To build garfio you need Maven 2 . We are using maven-2.0.7 . We use eclipse as IDE but you can use the editor you like as long as you follow the coding conventions.
Project structure
- garfio-remoting : remoting interfaces (published using SOAP)
- garfio-core : Services that are used by the others modules
- garfio-modules
- garfio-modules-api : API definition for the issue trackers modules. Modules must implement this API.
- garfio-modules-common : common code used among all the modules
- garfio-modules-mock : mock implementation of a issue tracker . It is usefull to test garfio-core
- garfio-modules-mantis : implementation for the Mantis Bug Tracker
- garfio-modules-jira : implementation for Jira
- garfio-cli : standalone command line version of garfio. It doesn't need any server. Configuration is provided using properties files. For information on how use this flavor, see GarfioEnDeployClient
- garfio-server
- garfio-server-distribution : configuration and data providers used in the public version.
- garfio-server-common :
- garfio-server-client : lightweight client...it provider a SOAP client that can access the garfio-remoting service (that is provided in the garfio-server-web project)
- garfio-server-web : webapp that provides an UI for configuration and serves garfio-remoting .
- garfio-site : this site :)
3rd party libraries
- Garfio uses:
- Spring framework for the !IoC glue y for the MVC in the webapp
- Acegi security for autentication and autorization
- Xfire to serve webservices
- among others
How to develop with [[http://eclipse.org][Eclipse]]
- Checkout the code from http://code.zauber.com.ar/repos/sandbox/garfio/code/trunk/
- Change the current directory to the checkout directory.
- Run mvn install
- Run mvn -DdownloadSources true= eclipse:eclipse
- Inside Eclipse
- If this is the first time that you are using maven with eclipse you must define the M2_REPO variable. For more information see: http://maven.apache.org/guides/mini/guide-ide-eclipse.html
- Import the projects using File / Import / Existing project . Select the checkout directory, and then import.