Contributing to Eclipse open source projects involved is a straightforward process and you’ll be working with an awesome community.
Each project is usually divided into two parts: A Core (which handles the internal logic) and a UI (which handles the user interface). Sometimes these are in separate repositories, and sometimes they are organized in different folders within the same repository. This makes it easier to understand the internal workings and how they are presented to users.
🎯 If you need to fix something in the user interface — whether it’s a dialog, a view, a perspective, or a preferences page — you can easily find the Java class implementing the UI element.
Just use the shortcut Alt+Shift+F1 to instantly see the plugin containing the class, so you know exactly which project to work on.
If you encounter an error, the error message and stack trace will usually help you to identify the part of the code, and therefore the project, where the error occurred or was caused.
It's common that at least some lines of the project, that is causing the error, occure in the error's stack trace.
📥 To start contributing, select the Setup file of the project of your choice. This will fetch the code directly from the project's main git repository, allowing you to make modifications and to propose them to the projects, for example as GitHub pull request (PRs). The General Contributor Guide describes how to use these setups in detail, and you can consult the associated project specific Contributor Guides listed in the table below. After that, each project has its own contribution rules, but overall, they are quite similar and typically involve submitting your work as a Pull Request on GitHub or as a Change on GerritHub.
| Project | Repository and Setup | Description | Contribution Page and Good First Issues |
|---|---|---|---|
| Eclipse Platform | The global Eclipse Platform project | Contributor Guide | |
| The repository with all the code that is not UI concerned | Good First Issues | ||
| The UI of Eclipse | Good First Issues | ||
| The SWT library | Good First Issues | ||
| JDT | The Java Development Tools project | Contributor Guide | |
| Eclipse Java Compiler and framework for Java code processing and manipulation | Good First Issues | ||
| UI Support for the JDT | Good First Issues | ||
| Java debug support | Good First Issues | ||
| PDE | The Eclipse Plug-in Development Environment | Contributor Guide | |
| Models, builders, editors, views, and so on to facilitate plug-in development | All Good First Issues | ||
| Equinox | The Equinox project | Contributor Guide | |
| The Equinox OSGi framework and services implementation | Good First Issues | ||
| The extensible provisioning platform of Eclipse | Good First Issues | ||
| M2E | The Maven2eclipse project | Contributor Guide | |
| The Maven integration for Eclipse | Good First Issues |