This document is about installing Gerrit into an Eclipse workspace for development and debugging, especially with the GWT hosted mode debugger.

You will need to have the GWT (Google Web Toolkit) 1.7 SDK installed on your system. A Java 6 or later SDK is also required to run GWT's compiler and runtime.

GWT requires the Sun JDK (or OpenJDK). The GWT "hosted mode" environment (Eclipse debugger or "make web-shell") does not work under libgcj.

User Library

Create a user library called GWT_17:

Maven Plugin

Install the Maven Integration plugins:

m2eclipse

Code Formatter Settings

Import GoogleFormat.xml using Window -> Preferences -> Java -> Code Style -> Formatter -> Import…

This will define the Google Format profile, which the project settings prefer when formatting source code.

Import Projects

Import pom.xml using General -> Maven Projects

If you also want source projects for gwtorm, gwtjsonrpc or sshd, import their top-level directories the same way. Note that you may need to edit the pom.xml under gerrit to ensure your snapshot builds are used.

Note
Some of the source code is generated with ANTLR sources. To build these files, you need to right click on the imported project, Maven -> Update Project Configuration. This should fix the compile errors identified after import.

If you also want a source project for JGit, import the top level jgit directory using General -> Existing Projects, selecting only the org.spearce.jgit and org.spearce.jgit.test projects.

Configure Database

You may have already done this step earlier, based on the instructions in Developer Setup.

Bootstrap Compile

From the command line we have to bootstrap the environment:

  ./to_hosted.sh

Production Compile

Always use

  mvn clean package

to create a production build. The ./to_hosted.sh used above to setup the development environment for Eclipse hosted mode also creates a state that produces a corrupt production build.

Launch Gerrit

Open Run->Debug Configurations…

Under Java Application find gerrit_debug (not Mac OS X) or gerrit_macos (Mac OS X only) to start the GWT hosted mode browser and debug through Eclipse.

Final Setup

Since you are creating a Gerrit instance for testing, you need to also follow the other steps outlined under "Initialize the Schema" in the Installation Guide. Note that the database has already been created if you launched Gerrit at least once.

Note that Bouncy Castle Crypto is automatically installed in the classpath when debugging with hosted mode, so you will need to create SSH keys with ssh-keygen.


Part of Gerrit Code Review