OpenJDK v17

FROM RELEASE 3.33 AND UP

jrest and the presence aggregator require openjdk release 17 and upwards to work from release 3.33 onwards.

Windows

Uninstall services

If any of the components are currently running as a windows service, then uninstall these first and install the service again later.

Uninstall previous java versions

Uninstall them all, from windows add remove programs and also any which may be in c:\Apps (you won't need them any more).

Install OpenJDK 17 from Eclipse Temurin

Download and install OpenJDK 17 from here:

https://adoptium.net/temurin/releases/

Download the .msi version 

Here is a direct link to version 17.0.7+7, but note, there may be a newer one when you do this.

https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.7%2B7/OpenJDK17U-jdk_x64_windows_hotspot_17.0.7_7.msi

Install and select ALL of the options (JAVA_HOME and JavaSoft Oracle registry keys are unselected):

Update Services (jrest, presence-aggregator ...)

Make a backup of the original directory. 

Then make a clean new copy of the new version of the component (jrest, presence-aggregator ... from the deploy directory in jtel-system-java-services).

None of the components should need any configuration on a new up to date jtel standard installation.

Check Services

If the component was running as a service, install the service again now, and then start.

For shell:startup deployments, try and start the service. The new startup cmd file for the service should find the new java automatically (as JAVA_HOME is now set from the Temurin installation above).

Linux

Uninstall old java

For most debian installations, this will to the trick:

apt-get -y remove default-jdk

Also check /home/jtel, to see if there are any manually installed JDKs here, for example:

ls /home/jtel/jdk-12.0.2

If so, remove them:

rm -Rf /home/jtel/jdk-12.0.2

Install Java 17

apt-get -y update
apt-get -y install openjdk-17-jdk

# Currently, under debian 11 you need to run the last command twice, because some dependencies are missing first time round
apt-get -y install openjdk-17-jdk

Update Services

Since most services no longer require a specific configuration for new standard installations (apart from maybe the DB password), it is wise to install copy the whole service directory (for example, all of jrest) to the linux machine again, as if you were making a new installation.

Example - Update jrest

RUN AS ROOT

# Remove
cd /home/jtel
systemctl stop jrest
rm -Rf jrest

# Install (same as normal install procedure)
cp -r /home/jtel/shared/jtel-system-java-services/deploy/jrest jrest
mkdir /home/jtel/jrest/log
chown -R jtel:jtel jrest
cp jrest/systemd/jrest.service /etc/systemd/system
chmod +x /home/jtel/jrest/systemd/jrest
systemctl daemon-reload
systemctl enable jrest
systemctl start jrest
  • No labels