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 where written while going through the process on a Mac OS Lion machine. See here for a similar set of instructions on Ubuntu 10.04.
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
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
Do Run As->JUnit plugin test on org.codehause.groovy.alltests.
Note 1: There are two separate sets of tests in alltests plugin:
- AllGroovyTests.java — the UI tests (content assist, navigation, refactoring, etc) takes ~35 minutes to run
- GroovyJDTTests.java — the core tests (parser, compiler integration, searching, etc) takes ~10 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 (I got this in STS)
You can increase the size of PermGen space in "Run As -> Run Configurations"
Add this to VMArguments: