This repository contains most plug-ins that make up Cevelop. This document describes the structure of the projects, as well as the workflow used. Please adhere to the guidelines described in this document to ensure a smooth development process.
Additionally, please take your time to update this and other documentation files if things change. There are few things worse than an out-of-date documentation.
The project layout follows the following conventions:
The helpers and configurations that reside at the root of the repository are described in this section.
The project includes a simple helper script, to make it easy to run Maven builds of specific bundles/tests of the project.
The script is designed to run on Linux systems, since it is used in the continuous integration environment.
To get started, simply call ./releng-tools/build
in the repository root directory.
This will perform a complete build of all bundles in the project, as well as execute all tests.
For more information, consult the output of ./releng-tools/build -h
.
Some settings of the build helper can be configured using the file build.ini
, while others are passed directly on the command line.
The easiest way to get started with developing is to use Eclipse PDE/Eclipse for Committers. We recommend that you install the development environment via the Eclipse Installer. Below is a quick guide on how to set up a basic Eclipse installation:
Depending on your internet connection speed, the installation will take some time. During the installation process, you might be prompted as to if you would like to accept the installation of unsigned content. This is expected and you will need to accept it in order for the installation to finish. If you have left the Launch automatically box checked, your freshly installed Eclipse will start automatically when the installation finishes. Otherwise you may start it manually afterwards.
When the Eclipse instance is lauchen, you will be asked to select a workspace. We strongly recommend using a fresh, clean workspace to work on all things Cevelop. Additionally, we recommend you switch to the Plug-in Development perspective and also enable the Git perspective.
The Cevelop source projects use a specific IDE configuration as well as a number of additional plug-ins. We recommend you use the configurations found in the development-support repository. Clone it somewhere and then perform the following steps to configure your IDE in accordance with the development process and guidelines of this and other source repositories of the Cevelop project:
cevelop-ide-plug-ins.p2
file within your clone of the development-support repositoryDuring the installation process, you might be prompted as to if you would like to accept the installation of unsigned content. This is expected and you will need to accept it in order for the installation to finish. When the installation finishes, you will be prompted to restart the IDE. Do so, in order for the newly installed plug-ins to be activated.
In order to import the code-style/formatting and debugging support configurations, follow these steps:
cevelop-ide-settings.epf
file within your clone of the development-support repositoryWhen the import finishes, you will be prompted to restart the IDE. Do so, in order for the newly imported preferences to be activated.
Finally, make sure that the IDE knows about your JDK 8 installtion:
You have now successfully prepared your IDE for development on the plug-in code and ILTIS.
Please be sure to finish the IDE setup, as described above, before starting work on the source code. With the IDE setup in place, clone this repository to a location of your choosing. You might do so either from within in the IDE or from the command line or any other tool you prefer. Regardless of the cloning mechanism you chose, make that the clone is available within in the IDE. If you have created the clone outside of the IDE, you may do so by switching to the Git perspective and clicking on Add an existing local Git repository. To subsequent dialogs will guide you through the import process.
With the repository registered in IDE, right click on it and select Import projects.... In the newly opened dialog, accept the default settings and click Finish. Depending on the perfomance of your system, the import process might take some time, wait for it to finish.
After the import has finished, switch back to the Plug-in Development perspective. You will notice that IDE has detected 25'000+ errors. This is expected, so DON'T PANIC! In the Project Explorer navigate the tree structure to either:
or
depending on your currently checked-out branch.
Open the contained .target
file, and in the newly opened editor click Set as Active Target Platform.
This will initiate the download and configuration of the dependencies required by the project.
The download/configuration process will take some time.
Afterwards, the IDE will automatically rebuild the project.
NOTE: a warning/error, originating from the Kotlin plug-in, may pop up. It it safe to ignore this error. If it keeps reappearing, try to restart the IDE.
You should notice, that the previous errors are now fixed.
Having setup the build environment as described in the above two sections, you are now ready to launch the plug-ins in a new Eclipse instance. Do do so, follow these steps:
.develop
target platform configuration.You may be presented with a dialog warning about a missing constraint of the org.eclipse.tools.templates.freemarker.java11
package.
This is expected and can be ignored using the Continue button.
A new Eclipse instance, containing all plug-ins, will be started.