What Java Runtime is required for custom module development in 4.8.14+9?

What Java Runtime is required for custom module development in 4.8.14+9? Not a Java-person, can someone shoot me a link to the specific runtime? Thanks in advance.

AFAIK you need JDK to develop custom modules or else you won’t be able to compile. Wowza is written in Java, so modules must be written in Java too. And development in Java requires JDK for compiling and JRE for running.

If you’ve installed WSE you will find the JRE in the /java subfolder of the installation. Or else you can download Oracle JRE/JDK (Note: read the license!) or OpenJDK. Google for them and you’ll find the download links soon enough, e.g. https://docs.microsoft.com/en-us/java/openjdk/download

Sorry Karel, we’ve written several custom modules to date, using the plug-in for Eclipse, etc, etc. I’m not a java guy so it always confuses me with the runtime releases. We’ve migrated to 4.8.14+9 in development, and our existing secure token authentication module does not function. I am certain its Java runtime related. Just wanted an exact pointer on where to download the required version to set up in Eclipse and compile. Thanks!

We compiled Wowza modules against OpenJDK 11, if I remember correctly. Wowza recommends OpenJDK 9 though.

1 Like

Hey @Rich_Sokol, Karel is 100% correct that newer versions of Engine ship with Java 9, but can be compiled for 9-12. If you want to use a version other than 9, you would need to instruct Engine to the version you want to use. Not everyone can use java 9 on their system and it’s sort of considered an outdated version. But, like Karel mentioned, it’s the same file for 9-12 so you can use the version you want to.

With Wowza Streaming Engine 4.8.5, we repackaged the version of OpenJDK Java SE JRE 9.0.4 installed with Wowza Streaming Engine 4.8.5 and later. This custom packaged version of OpenJDK Java SE JRE 9.0.4 is recommended for Wowza Streaming Engine 4.8.5 and later and includes the java.scripting module required for Wowza Streaming Engine 4.8.8.01 and later. The java.scripting module is also included in Java 9-12.


Having said that. if you do NOT use Java 9, you have to instruct Engine to the version you are using and the instructions to do that are here:
https://www.wowza.com/docs/manually-install-and-troubleshoot-java-on-wowza-streaming-engine#instruct-wowza-streaming-engine-to-use-a-specific-version-of-java3

1 Like

Also to repeat Karel a bit here, I just confirmed with the engineers that:

The development version needs to be the same or older than the runtime version. We ship with Openjdk 9 which would be the default runtime version. If they want to develop with OpenJDK11 for example, then they would need to also run the server with OpenJDK 11

modules compiled against 11 will not run on 9

1 Like