FlexDoc JRE (OpenJDK+JavaFX) for Linux


Table Of Contents


What is FlexDoc JRE?

It is a Java Runtime Environment custom-built from OpenJDK and OpenJFX to run FlexDoc/XML+DiagramKit on Linux.

Although, FlexDoc/XML itself can be run on any standard Java SE, DiagramKit – FlexDoc/XML native diagramming engine – requires JavaFX, the newest Java graphics/GUI platform.

Before Java 11, JavaFX was a part of the standard Java SE. So, no problem existed with the JavaFX dependencies, and FlexDoc/XML+DiagramKit could be run immediately with any new Java version.

But since Java 11, Oracle has moved JavaFX into a separate project found on openjfx.io. Now, those who need JavaFX should download JavaFX SDK separately from there, install it and specify all JavaFX dependencies in their Java application according to that installation. That, of course, may be a bit complicated for ordinary users and breaks down the whole idea of using some generic JRE preinstalled on user's computer (independently on FlexDoc/XML).

However, as a compensation for all that trouble (and actually as its goal), since Java 11, anyone can build their own custom JRE (called «runtime image») that may include in itself any other 3rd party modules necessary to run a given Java application on a particular computer platform. That's what we did.

How was it built

First, these two archives have beed downloaded: then, placed in the same directory and the following script executed in it:

flexdoc-jre.sh

#!/bin/bash

# Change current directory to the parent of this script file
cd $(dirname $0) 

tar -xf openjdk-20.0.1_linux-x64_bin.tar.gz
unzip openjfx-20.0.1_linux-x64_bin-jmods.zip 

export JAVA_HOME="jdk-20.0.1"
export PATH_TO_FX_MODS="javafx-jmods-20.0.1"

$JAVA_HOME/bin/jlink --module-path $PATH_TO_FX_MODS \
    --add-modules java.base,java.desktop,java.xml,javafx.base,javafx.graphics,javafx.swing \
    --bind-services --output jre

tar -zcvf flexdoc-jre-20_linux.tar.gz jre

How to install and use it?

  1. Go to https://www.flexdoc.xyz/downloads/ and download from there:
    FlexDoc JRE (OpenJDK+JavaFX) to run FlexDoc/XML+DiagramKit | Linux/64 (tar.gz)
    You should get this archive:
    flexdoc-jre-20_linux.tar.gz
  2. Unpack it into {flexdoc-xml} – your FlexDoc/XML installation directory. You will have a folder:
    {flexdoc-xml}/jre
    That will be your Java to run FlexDoc/XML!
  3. Now, you can immediately run FlexDoc/XML using these scripts:

    Set a permission to allow executing generator.sh / designer.sh as a program.


If you have any problems or questions, please let us know by sending an email to: support@flexdoc.xyz