SwiftMQ requires Java 11 or later.
To use Java 15 or later with Streams Swiftlet, you need to run SwiftMQ with GraalVM CE which is a next-generation polyglot JVM, based on the standard OpenJDK and provided by Oracle. SwiftMQ has been highly optimized for GraalVM and we recommend using it instead of the standard OpenJDK.
$JAVA_HOME/bin/gu install js
Installing GraalVM with the
install script is located in the
scripts folder of the distribution and can be used to automatically install the latest tested GraalVM used from this router only.
Using a Web Proxy
Before you invoke it, check whether your host uses a web proxy. In that case, you need to set environment variables (the values are examples) before you invoke the script.
Unix / MacOS:
export proxyhost=192.168.178.34 export proxyport=9080
Windows (Terminal CMD.EXE):
set proxyhost=192.168.178.34 set proxyport=9080
Invoking the install script
Invoke the script with
If you specify
-d, a prior installation of GraalVM will be removed before install.
The script downloads GraalVM and installs Graal.js to execute SwiftMQ Streams. On MacOS you will be asked to enter the
sudo password to remove the quarantine attributes.
Installation from an Archive
After you have unpacked the archive, you will find the following directory structure below the distribution's top-level directory:
Self signed TLS certificates and server/client key stores.
All dynamic data of the router like configuration, logs, persistent store
jar files and config meta data of all Kernel Swiftlets
Extension Swiftlets JMS, AMQP, JavaMail Bridges and Replicator and Kernel Swiftlet replacements Authentication JDBC and Store JDBC.
Shell scripts to start the router and cli
SwiftMQ system streams
Using a Web Proxy
SwiftMQ normally does not connect to the outside world, except for routing connections. However, if you are using SwiftMQ Streams (or Flow Director flows) on that router which opens REST connections via http/s, you need to set the web proxy as shown here.
Starting the Router
Go to the
scripts directory and start the router as follows:
If you are starting it under Windows and use preconfig files, please set it in quotes!
Running SwiftMQ UR as Docker Container
Difference to SwiftMQ CE
The only difference to SwiftMQ CE is that SwiftMQ UR is not available in the Docker registry but must be downloaded as a
tar.gz archive. Instead of the
docker pull command use
docker load < <tar.gz archive>
Then reference the Docker image as
SwiftMQ UR deploys all available Extension Swiftlets during the first startup. You need to stop and start the Docker container to apply preconfig files for Extension Swiftlets after the initial deployment.
For further information on SwiftMQ on Docker have a look at the SwiftMQ CE installation.
The standard configuration of SwiftMQ UR is identical with SwiftMQ CE.
To start CLI, SwiftMQ's command-line interface, perform a
scripts directory. As username/password press the return key (anonymous) or use
SwiftMQ UR contains the same examples as SwiftMQ CE but adds those for Filetransfer over JMS.