Due to the multitude of technologies used by Eclipse SET, building the entirety of the Signalling Engineering Toolbox entirely from scratch is non-trivial, and rarely required.
As a result, this document contains two sets of instructions. First, instructions on how to work on the main SET application relying on prebuilt components (e.g. for development) and secondly instructions on how to do a full production build locally are provided.
Eclipse SET currently supports Windows x64 for execution and either Windows x64 or Linux x64 machine for building the code. Other operating systems or processor architectures may work, but are generally not supported.
- A Java Development Kit 21
- node.js 20
- Maven (3.9.6)
- Eclipse IDE (2024-06)
- hugo (v0.101.0+)
This is the recommended way to build and debug for development.
- Clone this repository or download a source archive.
- Create a new workspace in the Eclipse IDE
- Import projects from
java/
via File -> Import -> Existing Projects into Workspace - Import the Checkstyle configuration from
releng/eclipse/CheckstyleEclipse.xml
via Window -> Preferences -> Checkstyle - Set the target platform in
org.eclipse.set.releng.target
- Launch the product in
org.eclipse.set.releng.set.product
- Adapt the working directory in the launch configuration to a local directory, which contains an unpacked copy of a full Eclipse SET build (use a recent Github Actions build of the same branch for compatibility).
If you want to work on the embedded web components (e.g. the textviewer or the pdf viewer), you need to:
- Browse to the appropriate subfolder in
web/
- Install npm dependencies via
npm install
- Build via
npm run build
- Copy the contents of the resulting
build
-directory to the unpacked Eclipse SET build (in the matchingweb/
subdirectory).
This is the recommended way if you want a production-style build. This is also what we have implemented on the Jenkins instance. If you want to develop SET, this is not recommended as the subcomponents are relatively stable and are easy to aquire from our download site.
- Follow the build instructions for the model subcomponent.
- Follow the build instructions for the browser subcomponent.
- Adjust the target platform in
java/bundles/org.eclipse.set.releng.target/org.eclipse.set.releng.target.target
to point to your built artifacts. - Build web components
- In
web/pdf
,web/siteplan
andweb/textviewer
:- Download dependencies via
npm ci
(ornpm install
if you changed the package.json) - Build via
npm run build
- Copy the contents of the resulting
build
-directory to the matching Eclipse SET directory injava/bundles/org.eclipse.set.feature/rootdir
.
- Download dependencies via
- In
web/about
andweb/developerhelp
:- Run
hugo
to build the info pages - Copy the conte
- Run
- In
- Build via maven:
mvn clean verify
The SET product is now located under java/bundles/org.eclipse.set.releng.set.product/target/products
.