-
Notifications
You must be signed in to change notification settings - Fork 44
Set up your development environment
To compile hale studio the Java Development Kit (JDK) version 17 is needed.
Users can get the JDK here.
Hale studio is based on Equinox and Eclipse and also uses Eclipse as its IDE.
The current development version uses Eclipse 2020-03 (4.15) as its base. However, it is required to use newer versions for development, since 2020-03 does not support Java 17 for development.
Eclipse can be downloaded here.
Eclipse 2022-06 (4.24.0) in particular which supports Java 17 can be found here.
We recommend using the “Eclipse IDE for RCP and RAP Developers” package.
Eclipse plugins required for compiling and running hale.
-
Groovy-Eclipse (make sure to install the sometimes optional Groovy 2.5.18 compiler and activate it in the preferences)
- Please note that recent versions of Groovy Eclipse no longer support Groovy 2.5, so you need to use older Groovy Eclipse releases.
- You can find the update site for Eclipse 2022-06 (4.24.0) here (to be used in the “Install new software…” dialog in Eclipse)
- Please note that recent versions of Groovy Eclipse no longer support Groovy 2.5, so you need to use older Groovy Eclipse releases.
If not already done, (fork and) clone the HALE repository from Github.
Use File → Import… → General → Existing Projects into Workspace to import Eclipse projects from the cloned repository into you Eclipse workspace.
The projects are grouped in the following folders:
- build – anything related to the build process
- platform – platform project, libraries, tools, preferences
- common – HALE core projects (APIs, models) [No UI or server related projects]
- ui – HALE core UI projects including the application project with the product definition
- io – Implementations of HALE I/O providers (e.g. XML/GML, XSD)
- server – Web application/server related projects
- ext – Optional HALE extensions, e.g. third party provided, grouped again by specific extension
- cst – The conceptual schema transformer (CST) as transformation service implementation, Java transformation functions
- util – Utility projects
Projects in the folders ui
, common
, server
, cst
, util
, io
must follow naming conventions in project/bundle and package names.
The platform
project contains a file hale-platform.target
. This file represents the platform environment for the HALE projects. The environment is needed for the projects to be able to compile. This is how to set the defined target platform:
- Open the file in Eclipse.
- Wait until the job Resolving Target Definition is completed (otherwise you will get errors when you continue). If there are errors resolving the platform, usually just trying it again (by closing and opening the target file again) works.
- Select Set as Target Platform in the upper right corner of the editor.
The eu.esdihumboldt.hale.ui.application
project contains a file HALE.product
which is the product definition of hale. Open the file in Eclipse and select Launch an Eclipse application in the editor (either on the page Overview or in the toolbar in the upper right corner of the editor).