This repository contains the source code of the openLCA application. openLCA is a Java application that runs on the Eclipse Rich Client Platform (Eclipse RCP). This project depends on the olca-modules project which is a plain Maven project that contains the core functionalities (e.g. the model, database access, calculations, and data exchange).
The repository has the following sub-projects:
- olca-app: contains the source code of the openLCA RCP application.
- olca-app-build: contains the build scripts for compiling openLCA and creating the installers for Windows, Linux, and MacOS.
- olca-app-html: contains the source code for the HTML views in openLCA (like the start page or the report views).
- olca-app-runtime: contains the build scripts for creating the Eclipse RCP runtime for openLCA.
See also the README files that are contained in these sub-projects.
Building from source
- Git (optional)
- a Java Development Kit 8
- the Eclipse package for RCP developers
- Node.js and Gulp (for building the HTML5 user interface components)
When you have these tools installed you can build the application from source via the following steps:
Install the openLCA core modules
The core modules contain the application logic that is independent from the user interface and can be used in other applications. These modules are plain Maven projects and can be installed via
mvn install. See the olca-modules repository for a more information.
Get the source code of the application
We recommend that to use Git to manage the source code but you can also download the source code as a zip file. Create a development directory (the path should not contain whitespaces):
mkdir olca cd olca
and get the source code:
git clone https://github.com/GreenDelta/olca-app.git
Your development directory should now look like this:
olca-app .git olca-app olca-app-build olca-app-html olca-app-runtime ...
Building the HTML pages
To build the HTML pages of the user interface navigate to the
Then install the Node.js modules via npm (npm is a package manager that comes with your Node.js installation):
This will create a folder
olca-app-html/node_modules with the dependent modules. After this, you can create the html package via Gulp:
This will build and package the HTML files to
Prepare the Eclipse workspace
Download the current Eclipse package for RCP and RAP developers (to have everything together you can extract it into your development directory). Create a workspace directory in your development directory (e.g. under the eclipse folder to have a clean structure):
eclipse ... workspace olca-app .git olca-app olca-app-build olca-app-html olca-app-runtime ...
After this, open Eclipse and select the created workspace directory. Import the projects into Eclipse via
Import/General/Existing Projects into Workspace
(select the olca/olca-app directory). You should now see the olca-app, alca-app-build, and olca-app-runtime projects in your Eclipse workspace.
Build the Eclipse runtime
Within Eclipse right-click on the
olca-app-runtime/build.xml file and select
Run as.../Ant build. This will download the RCP platform on which openLCA is built. When this script is finished (note that this could take a while) open the file
olca-app-runtime/platform.target within Eclipse. Modify the current location to an absolute path which points to the
olca-app-runtime/platform folder. After this click on 'Set as target platform' on the top right of the editor.
After this, go back to the command line and navigate to the
This will copy the installed openLCA core modules and dependencies (see above) to the folder
Test the application
Refresh your Eclipse workspace (select all and press
F5). Open the file olca-app/openLCA.product within Eclipse and click on the run icon. openLCA should now start.
If you want to build an installable product, see the description in the olca-app-build sub-project or simply use the Eclipse export wizard (Export/Eclipse product).
Unless stated otherwise, all source code of the openLCA project is licensed under the Mozilla Public License, v. 2.0. Please see the LICENSE.txt file in the root directory of the source code.