EclEmma 2.0.1 Java Code Coverage for Eclipse EclEmma at SourceForge.net
Eclipse Community Award 2008
JaCoCo
The Java Specialists' Newsletter

Developer Information

This section provides information for EclEmma contributors and ISVs using the EclEmma API. The project is hosted on the SourceForge.net platform, its overview page is http://sourceforge.net/projects/eclemma. The Open Discussion forum at SourceForge is the place to talk about any development specific issues.

Trunk Builds

The latest trunk build is always available at the update site URL http://download.eclipselab.org/eclemma/trunk/update (not browseable).

EclEmma API

The com.mountainminds.eclemma.core plug-in exposes a public API that is used by the UI plug-in. The same API may be used by third parties e.g. for alternative user interfaces, other use cases or functional extensions.

Hacking EclEmma

Interested to working with the EclEmma code base for new features and improvements? No problem, with basic PDE skills you should get started within a few minutes. Here is a quick start guide:

1. Setup an Eclipse IDE for EclEmma

  • Have Eclipse installed including the Plug-in Development Environment. The PDE is for example included in the Eclipse Classic download or can be added to your existing Eclipse installation via the Update Manager.
  • Add Subversion support to your Eclipse by installing Subclipse or Subversive.
  • To ensure that your code complies with the minimal requirements you should have installed Java 1.5 JRE and Eclipse 3.5. Configure these JDK and Eclipse versions as your development target in the Eclipse preferences.
  • Connect to the Subversion repository URL https://eclemma.svn.sourceforge.net/svnroot/eclemma and checkout the following projects:
        eclemma/trunk/com.mountainminds.eclemma.core
        eclemma/trunk/com.mountainminds.eclemma.core_test
        eclemma/trunk/com.mountainminds.eclemma.doc
        eclemma/trunk/com.mountainminds.eclemma.ui
        eclemma/trunk/com.mountainminds.eclemma.feature
  • The web site www.eclemma.org is also maintained in the same Subversion repository:
        eclemmasite
    A Python interpreter is required to run the generator script generator/eclemmasite.py.

2. Get familiar with the code base

The high-level design principles and some implementation strategies are introduced in the architecture description. Implementation details can be studied in the JavaDoc included with the EclEmma source base. A good understanding of Eclipse' launch and debug framework will help to get behind the Coverage mode implementation.

3. Contribute back!

So you finally created a cool new feature or fixed some bug? Great, contribute it back to the official EclEmma releases! Use a tracker item to describe your idea and attach your implementation as a patch.