java/security/acl/Group no longer supported in java 14


is there a workaround or a future release to deal with higher java version like 14.
In Java 14 java/security/acl/Group is removed and the keycloak java adapter no longer works in java 14.
Note: Downgrading the Java Version is unfortunate not possible.

java.lang.NoClassDefFoundError: java/security/acl/Group

There is an issue about this but fix versions is 13.
The status is pull request sent and the pull request can be found on so you can keep an eye on it and maybe create your own build if your require a solution earlier than 13

FYI, this is only if you use Tomcat as the Servlet container.

i am getting the same error.can anyone help?

There is nothing to help with.

Or you use Java 11 where you deploy Keycloak, which is the simplest.
Or you create a custom build yourself and use that one
Or you wait until Keycloak 13 is released

I’ve posted the links to the original issue already and a link to a git pull request which you can use if you really need to run Keycloak on Java 11+ for some reason today.
Java 11 is LTS at the moment so I see no problem why running it on that is a problem.

Hello zonoaut, I am using the java 11 but I am still getting the same error

I’ve cloned 13.0.0 and using java 16.0.1 and still getting this error.

Compilation failure: Compilation failure: [ERROR] /Users/bpc/workspace/keycloak/adapters/spi/jboss-adapter-core/src/main/java/org/keycloak/adapters/jboss/[39,8] cannot access [ERROR] class file for not found

What is the recommended resolution? Use Jetty? Use another java version? Patch?


PS. says its fixed in 13.0.0 and Closed. But clearly its not fixed in 13.0.0 for a vanilla environement. Hence there must be some magic configuration that 13.0.0 got built with, which is what I’m searching for. I don’t really care what that config is, I just need it to successful build so I can get on with my development.

It works for adapters ootb at our environment. We’re just using regular KC Tomcat 9.x adapter and compiling our app with Java 16 - works. With KC versions < 13, we got the above mentioned error.

Keycloak itself still is, for compile, on older Java version! See e.g. here: