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.

If you're one of the developers, it is also recommended to add this page to your watch list, so that you get notification about any change in the environment settings.

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 (project’s Object Model). 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 https://staging.penril.net/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

Building The Project

As mentioned above, there are two ways to build the project:

Using command line (IDE-independent)

You can build the project simply by changing the directory to project's root folder (where pom.xml resides) and executing mvn command, passing install as the build lifecycle

$ mvn install

Using IDE plugins (m2eclipse in this case)

"m2eclipse makes development easier by integrating data from a project's Object Model with Eclipse IDE features." - m2eclipse homepage

Using this plugin you can build and run your project the same way you perform this tasks for any other project created by Eclipse itself.

NOTE: For working with the project inside Eclipse, make sure you add the project to the workspace using "import Maven project" feature of Eclipse, and do it only after you successfully installed both m2eclipse plugins mentioned above.

settings.xml Magnifier (1.55 KB) Anonymous, December 05, 2013 10:17