Developer Guide

Contribute to the EJTools project

There are a variety of ways to participate. Regardless of how you choose to participate, we suggest you to join the mailing list first.

Below you can find some information that is useful for developers and people who might want to become a developer.

Maven Build System

The build system used for the EJTools project is Maven . This tool aims to promote the reuse of existing projects and provides several ready-to-use goals nad plugins.

To build the EJTools projects with Maven, the following software are required :

  • JDK 1.4.0 or higher
  • Maven 1.0b8 or higher
  • XDoclet Maven plugin 1.2b2 or higher

The "xdoclet-java-module" has been patched and is present in the project local repository. Once the XDoclet module has downloaded the dependencies, override the module by copying the given file into your Maven repository. Don't forget to remove the MD5 checksum of the module.

Once all this stuff is properly installed two goals are available :

  • At the root of the project, type the command "maven". This will perform a complete build of the projects. As EJTools uses XDoclet, you may encounter some trouble the first time the build is launched. Retyping the command enables a correct XDoclet support.
  • At the root of the project, type the command "maven site". This will build the project website.

Development under Eclipse

The EJTools projects are mainly developped under the Eclipse platform.

The Eclipse specific files are included to allow an easy import of the projects. To build under Eclipse, follow these steps:

  • Create a MAVEN_REPO global classpath variable which points to the Maven repository folder (i.e. %MAVEN_HOME%\repository)
  • Import thirparty folder : contains all the thirdparty libraries
  • Import libraries folder : contains all the libraries used by the applications
  • Import application folder : contains all the applications project

Coding Conventions

The code style used in EJTools is mainly produced by the pretty Printer of the JRefactory project. You can download the pretty.settings file that format the code here .

The main points of the style are :

  • Indentation of 3 spaces : no tabulations.
  • Clean imports : every class used is explicitly imported, no wildcard. In case of conflicts, the full qualified name is required.
  • Javadocs comments for every members, methods and inner classes.
  • Brace starts on a new line : easier to follow.
  • Brace for every block, even if it is single line.