Version: 9.4.32.v20200930 |

Source Control and Building
Previous | Chapter 35. Contributing to Jetty Home | Next

##### Contact the core Jetty developers at www.webtide.com

private support for your internal/customer projects ... custom extensions and distributions ... versioned snapshots for indefinite support ... scalability guidance for your apps and Ajax/Comet projects ... development services for sponsored feature development

## Source Control and Building

If you want to contribute to the development of jetty, you will need to work with a handful of technologies.

### Source Control

Jetty uses several development trunks for its artifacts. They are mirrored on github through http://github.com/eclipse, or you can look through them via the Eclipse setup at the URLs below.

#### Primary Interest SCM URLs

These are the URLs to the GIT repositories for the Jetty code. They are for people who are working on the Jetty project, as well as for people who are interested in examining or modifying the Jetty code for their own projects.

Jetty Project Repository
  https://github.com/eclipse/jetty.project

#### Build and Project Infrastructure SCM URLs

These are the URLs for Jetty-related code and metadata. These are not needed to use Jetty; these are primarily of use for people who are working with Jetty-the-project (as opposed to using Jetty-the-server in their own projects).

Administrative pom.xml file
  https://github.com/eclipse/jetty.parent
Build related artifacts that release separately, common assembly descriptors, remote resources, etc.
  https://github.com/eclipse/jetty.toolchain
Files associated with the development of Jetty — code styles, formatting, iplogs, etc.
  http://git.eclipse.org/c/jetty/org.eclipse.jetty.admin.git

### Build

Jetty requires the use of Java 8 and the latest releases are always recommended to build.

Jetty uses Apache Maven 3 for managing its build and primary project metadata.

Building Jetty should simply be a matter of changing into the relevant directory and executing the following commands:

    $ git clone https://github.com/eclipse/jetty.project.git
    $ cd jetty.project
    $ mvn install

All relevant dependencies will be downloaded into your local repository automatically.

> ### Note

> Jetty has a great many test cases that run through the course of its build. Periodically we find some test cases to be more time dependent than they should be and this results in intermittent test failures. You can help track these down by opening a bug report.

### Import into Eclipse

Jetty is a Maven project. To develop Jetty in Eclipse, follow these directions:

#### Install m2e plugin

1. From the Eclipse menu at the top of the screen, select Help > Eclipse Marketplace.
2. Search for m2e.
3. Install the Maven Integration for Eclipse

#### Clone the git repository

Using either the egit plugin or git on the commandline (as in the build section above), obtain the jetty source.

#### Import the Maven Projects

1. From the Eclipse menu, select File > Import
2. From the Maven folder, select Existing Maven Projects.
3. Click Next.
4. In the Import Maven projects pane, click Browse and select the top folder of the jetty source tree.
5. Click Next/Finish to import all of jetty into Eclipse.
6. Wait for Eclipse and m2e to compilie and set up the project.

Previous | Top | Next
Documentation | Home | Coding Standards

See an error or something missing? Contribute to this documentation at Github!(Generated: 2020-09-30)