« Previous - Version 4/14 (diff) - Next » - Current version
Ahmadi Hadi, May 25, 2011 12:01


Development Environment

This page serves as a guide for developers to set up the dev env required for participating in AgroBank RIB project. It's maintained as a wiki so that everyone be able to improve it by contributing his/her experiences throughout the process of configuring and building the project.

Source Code Repository

https://hub.penril.net/hg/agrobank/agro_rib/ (A Mercurial Repository)

Build Tools

The project definition, its dependencies and other build configs are defined in a file in its root folder named pom.xml. This file is used by Apache Maven to build the project. Apache Maven is de facto Java buid management tools that decouple your project structure from IDEs. On the other hand, it's so popular that all Java IDEs have developed plugins to integrate and interpret Maven projects into their expected structures. Another benefit of build tools like Maven is that the project can be build automatically using Continuous Integration servers, like Jenkins/Hudson in our case.

In order to run mvn (Maven command) outside your Eclipse environment you need to download Maven binaries from here and install it following these instructions .

Make sure you select Maven 2.2.1 as this is the version used in this project.

Configuring Maven to point to Penril's Maven repo

To speed up downloading of artifacts required by Maven, a cache proxy is configured at http://219.95.244.226:8080/nexus/ . All you need to force Maven to use this mirror is to put settings.xml file (attached to this wiki) in your ${user.home}/.m2 directory (For the default value of user.home for your system refer to this table ).

Eclipse Plugin for Maven2

m2eclipse is the recommended plugin to import Maven projects into Eclipse workspace. You can find the installation guide on http://m2eclipse.sonatype.org/installing-m2eclipse.html. Make sure you install both:
  • Maven Integration for Eclipse (Required) from m2eclipse Core
  • Maven Integration for WTP from m2eclipse Extras