On Thu, Jun 5, 2025 at 5:35 PM viktor_krumm <viktor_kr...@proton.me.invalid> wrote:
> I am trying to write an extension to pass login events to a Unix domain > socket. I am very new to this, so I may misunderstand things. Based on > the ClassDefinition, I thought guacamole used Java 8 since ClassDefinitions > after 52 failed. What version of Java does Tomcat9 then use? > > Tomcat does not use a specific version of Java - it uses whatever version of Java you configure it to use. Guacamole 1.5.5 is compatible back to Java 8, and I believe Java 1.6.0 will maintain that compatibility (based on some work we had to do to maintain the compatibility). If you're running the guacamole Docker container, version 1.5.5 runs JDK8 and Tomcat 8.5.x. The guacamole container for version 1.6.0 will switch to JDK 21 and Tomcat 9. > If it is after 16, Java should natively support sockets. If it is before > that, then I will need to use an external library, junixsocket. I tried to > use maven-shader plugin to bundle that jar, but it failed. I do not know > how else to include it. > > If you're running Guacamole outside of containers, you can use whatever version of Java you like to run Tomcat, which should support your requirements. If you're running the containers, you'll either need to switch the Java version in the Dockerfile and build your own container, or you'll need to wait for 1.6.0 to come out with the later version already specified in the Dockerfile. -Nick >