Building Groovy Eclipse in Eclipse
Below is a step-by-step list of instructions that takes you through the process of setting up an Eclipse environment for building the Groovy-Eclipse plugin. These instructions were written while going through the process on a Mac OS Lion machine. See here for a similar set of instructions on Ubuntu 10.04. Except for installing The process is similar no matter which OS you are using
These instructions are meant for Eclipse 3.7 (Indigo).
Download and unzip Eclipse for RCP/Plug-in Developers from http://eclipse.org/downloads. Choose the appropriate version for your architecture.
Install the Subversive Eclipse plugin
Groovy-Eclipse source code is stored in a subversion (SVN) repository. The best way to interact with the repository is through Eclipse's SVN tooling called subversive. Open up Help -> Install new software. Choose the Indigo update site and install:
- Subversive SVN Team Provider
- Subversive SVN JDT Ignore Extensions (Optional)
No need to restart.
Some of the projects contain Groovy code, so we need to have Groovy support installed.
Preferably, the latest version of Groovy Eclipse should be installed, which can be obtained from the update site for the latest snapshot:
Install the subversive connector
You will be prompted to install a subversion connector in order for your subversive plugin to actually call subversion commands. If the dialog doesn't pop up automatically, then go to Preferences -> Team -> SVN.
When the discovery dialog appears, choose a connector. I'd recommend SVN Kit 1.3.5.
Checkout Source from SVN
Go to File -> Import -> Team -> Team project file. Select the groovy-eclipse-3.7.psf url.
Have a cup of coffee or a beer while the project is imported.
After the dialog goes away, you will most of the relevant Groovy-Eclipse projects in your workspace. There are two that are missing: org.codehaus.groovy.m2eclipse (provides the m2eclipse integration), and org.codehause.groovy.frameworkadapter (a bundle fragment that chooses which compiler version to start with, and not chosen because having this bundle in your workspace can make it hard to launch runtime workbenches).
The projects are organized into working sets. To see the working sets better, click on the down arrow in the package explorer -> Top Level elements -> Working sets. All projects should be compiling with no errors.
Run the tests
Optionally, you may want to run the tests. Do Run As->JUnit plugin test on org.codehause.groovy.alltests.
Note: There are two separate sets of tests in alltests plugin:
- AllGroovyTests.java — the UI tests (content assist, navigation, refactoring, etc) takes ~35-45 minutes to run
- GroovyJDTTests.java — the core tests (parser, compiler integration, type inferencing, searching, etc) takes ~10-15 minutes to run
At the time when I wrote this, *running both test suites at once resulted in a number of test failures* in the GroovyJDTTests suite. Running both the suites separately I got no such failures.
Note: If you get an Out of Memory Error like this:
You can increase the size of PermGen space in "Run As -> Run Configurations"
Add this to VMArguments: