GanttProject Developer Guide
This page provides instruction for building GanttProject from the master branch.
The instructions assume that you’re using Ubuntu-based Linux distribution. The process on other distros and Windows/Mac OSX should be similar, modulo differences in packages/paths and the way command line terminal works.
Overview of the technologies and frameworks used in the build process
GanttProject build process uses Java, Kotlin and Google Protocol Buffers compilers. Orchestrating them is not trivial, so be prepared to have some fun with setting up the things.
A bare minimum which you need is:
Java SE Development Kit(JDK) version 8 from Oracle or OpenJDK. You also need JavaFX It is bundled with Oracle’s JDK, but if you’re using OpenJDK then you need to install JavaFX separately. It is available as
openjfxin Ubuntu repositories.
Git version control to checkout the sources.
Please make sure that you can run
The remaining required artifacts will be downloaded during the build process.
Checking out the sources
The source code is stored in GitHub repository. You can clone the repository using
git clone https://github.com/bardsoftware/ganttproject.git
The rest of this page assumes that you checked out the sources using one of the ways into
This document assumes that you work with
master branch or with your own branch forked from
Downloading the required libraries
Before building you need to download some required libraries and frameworks. Run the following command to fetch them from Maven repositories::
cd /tmp/ganttproject/ganttproject-builder gradle updateLibs
Building with Gradle
If everything is OK with your environment then the following will build a binary distribution of GanttProject:
cd /tmp/ganttproject/ganttproject-builder gradle distBin
The distribution is assembled in
ganttproject-builder/dist-bin directory. You can
run GanttProject using
cd /tmp/ganttproject/ganttproject-builder/dist-bin ./ganttproject
You can also start GanttProject using
gradle runApp which will build a distro and launch
GanttProject as necessary.
Basically, that’s everything that you need to be able to change the sources using any text editor, build and run the changed code.
Building and running from IntelliJ IDEA
The instructions below apply to IntelliJ IDEA but other popular IDEs can also be used in a similar way.
IDEA supports Gradle out of the box.
You can just import GanttProject with
File.New.Project from Existing Sources menu action in IDEA
where you need to choose
ganttproject-builder/build.gradle file. When asked about the modules,
.. as shown on the screenshot below
Having completed the import, you can run GanttProject using Gradle’s runApp task. Open Gradle
pane in IDEA, find task
right-click and choose