Installing a Command Line JDK

Introduction

In order to run StreamBase EventFlow fragments in a StreamBase Runtime node, the epadmin command line tool that installs and starts the node much have access to a supported JDK on the system PATH. The epadmin command itself is not a Java command, but it uses Java commands on the PATH to set up and run EventFlow fragments.

There are two ways to provide JDK access to epadmin:

  • Install a supported JDK at the operating system level on each development, QA, and deployment machine that hosts a StreamBase installation.

  • Configure the shell environment of the users on StreamBase machines to share the bundled JDK.

Installing a Supported JDK

Installing a system-level JDK has the advantage of being maintainable independently of StreamBase. Java developers probably already have a JDK installed for command-line use, independent of the JDKs built into Eclipse or IntelliJ.

To install a JDK for non-Java developers, or for QA or deployment machines, download and install a recent JDK from Oracle. Select a JDK 8 release, and not just a JRE. The recommended version is a JDK from the same release as the JDK bundled with StreamBase, or newer. In any case, do not install a JDK 8 older than update 40.

On all platforms, make sure the installer sets your command shell environment as follows:

  • Set the JAVA_HOME environment variable pointing to the full path of your JDK installation.

  • Add $JAVA_HOME/bin (or %JAVA_HOME%\bin) to your system PATH.

If your JDK installer does not make these changes, be sure to configure them manually in the system environment for Windows, or in the shell login scripts for users on macOS and Linux.

On Windows, select the 64-bit JDK option, since StreamBase is supported only on 64-bit editions of Windows.

On macOS, install a JDK from Oracle. There is no need to install the Java 6 JDK that Apple provided in older macOS versions. That Apple Java package is no longer included with recent macOS versions, but is still available from Apple's development site. There is no harm in installing it, because multiple Java installations can coexist on macOS.

On Red Hat Linux, the base installation might have installed a recent OpenJDK release. While OpenJDK might work, it is not tested for use with TIBCO StreamBase, and is not supported. TIBCO strongly recommends installing a supported Oracle JDK for development, QA, and deployment work with StreamBase applications.

Sharing the StreamBase-Installed JDK

On Windows platforms, the StreamBase Command Prompt looks for a JAVA_HOME environment variable. If one is found, the Command Prompt honors it and expects a supported JDK to be installed at that location. If not found, the Command Prompt makes two settings for you:

  • JAVA_HOME is set to %STREAMBASE_HOME%\jdk.

  • The system PATH is augmented with %JAVA_HOME%\bin.

Thus on Windows, if you do not have a system-level JDK installed, the StreamBase Command Prompt configures the command shell to make use of the JDK bundled with StreamBase.

As an alternative on macOS and Linux, you can manually configure your user shell login scripts to make the same settings:

  • Set JAVA_HOME set to $STREAMBASE_HOME/jdk

  • Add to the PATH $JAVA_HOME/bin