Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: removed the totally outdate instructions and linked to the instructions found on the github page instead

Prerequisites

Java Developer Kit (JDK)

You will need a JDK 1.4.2+ (J2SE 1.4.2+) or compatible JDK to build Groovy.

Apache Ant

To execute the build process you need to have Apache Ant version 1.7.0 (or newer) installed.

Note

The optional TraX taskdefs are required, and some linux distributions, such as openSUSE, may require you to install them separately from the ant packages.

Git Client

To fetch the source code for the server, you will need to have a Git client version 1.2 (or newer, 1.4 is recommended) installed.

Note

If you are using a source archive from the distribution site site, then you do not need to have a Git client installed.

Fetch the Groovy Source Code

From Git

Have a look at our Git page for further details on how to get the sources, either from the Codehaus Git repository, or the GitHub mirror.

From a Source Archive

Select one of the *-src.* archives from the distribution site site and unzip it.

For example, to use the source from the Groovy 2.0.0-beta-2 release:

No Format
wget http://dist.groovy.codehaus.org/distributions/groovy-src-2.0.0-beta-2.zip
unzip groovy-src-2.0.0-beta-2.zip

Preparing to Build for the First Time

If you are behind a proxy firewall, you may need to set up proxy information in a ~/.ant/settings.xml or ~/.m2/settings.xml file:

Code Block
<?xml version="1.0"?>
<settings>
  <proxies>
    <proxy>
      <protocol>http</protocol>
      <host>proxy.host.net</host>
      <port>8080</port>
      <nonProxyHosts>localhost</nonProxyHosts>
    </proxy>
  </proxies>
</settings>

If you will need to publish artifacts then you will need to have appropriate permissions with codehaus and ensure that you have stored your credentials in a ~/.ant/settings.xml or ~/.m2/settings.xml file of the form:

Code Block
<?xml version="1.0"?>
<settings>
  <servers>
    <server>
      <id>codehaus.org</id>
      <username>YOUR_USER_NAME</username>
      <password>YOUR_PASSWORD</password>
    </server>
  </servers>
</settings>

Building

To build everything, run tests and create a complete installation in target/install, run:

No Format
ant install
Info
titleUseful Information

In case of java.lang.OutOfMemoryError try increasing the size of the heap space by setting the ANT_OPTS variable as follows:

ANT_OPTS=-Xmx512M

Increase the size of the heap size if required.

Info

If the unit tests hang indefinitely while building, try adding the following to your ant command:

No Format
-Djava.awt.headless=true

After this finished successfully, then you can try out the distribution that was just built. For example to play with groovysh you can run:

No Format
./target/install/bin/groovysh

Sometimes its desirable to skip the test execution for faster turn around. To turn off tests set the skipTests property, as in:

No Format
ant install -DskipTests=true

Distribution Archives

To build a Groovy distribution archive:

No Format
ant dist

This will build everything, generate documentation and create distribution archives under target/dist:

Section
Column
  • groovy-binary-VERSION.zip
  • groovy-docs-VERSION.zip
  • groovy-src-VERSION.zip
Column
width60%
Note

As you might have guessed VERSION will be the version of the project you are building, like 2.0.0-beta-2-SNAPSHOT for pre-releases or 2.0.0-beta-2 for a released version.

Publishing Artifacts

To publish artifacts to the Maven 2 repository, run:

No Format
ant deploy

This will either publish to the release repository or the snapshot repository based on whether the POM version contains SNAPSHOT or not.

If deploy is failing, then check Installing the UserTrust CA into the Java JDK.

Building from IntelliJ IDEA

Please follow the instructions found here.

Please follow the instructions on the groovy github page: https://github.com/groovy/groovy-core#building