I've read where the ignition.conf file can be changed to use a different version of Java but I can't seem to figure it out. I've made what seems to be the appropriate change but I still see Ignition using 17.0.9. Here's my .conf changes. Where am I going wrong? I have a library I'd like to use which was compiled against Java 65(major version 21) but Ignition only allows up to Java 61(major version 17).
This changes the version the Ignition Gateway runs with.
How are you checking that this worked? Are you expecting Clients and Designers to also use this version? Have you restarted the Gateway since modifying ignition.conf?
Also, obligatory, you probably shouldn't do this. We've done zero testing with Java 21, and while Java is quite good about backwards compatibility there's also a constant forward march of deprecations and feature removal for security that often breaks old libraries, some of which we are probably including somewhere in Ignition.
Thanks Kevin. I've restarted the gateway a couple times but no success. It still opens fine so there's no fear of having broken anything. I was using the Scripting console just to check the version that Ignition was using. Script console below:
# Check the Java version being used in Ignition
import java.lang.System
java_version = java.lang.System.getProperty("java.version")
print("Ignition is using Java version: " + java_version)
The script console runs in the designer. Results there have no bearing on what is happening in the gateway. You should just look at the gateway's status page.
I completely understand the issue you raise here. Fortunately I was just experimenting and not dealing with any production project. Maybe, big maybe, I could talk to the developer(in-house) and see if they could compile against Java 17. I've used the same libraries of an earlier compiled version with success(listing methods and return types) but wanted to make sure I captured the most current library.