Any plan to support java 21 in app engine standard?
Hi @sixcorners ,
Welcome to Google Cloud Community!
Yes, Google App Engine Standard supports Java 21 as of December 6, 2023. However, it is currently in preview. You can update your configuration files to enable it.
To use Java 21 with App Engine standard, you have two options:
- Upgrade to Java Enterprise Edition 10 (EE10): This is the recommended option and the default behavior. Java EE10 does not support javax.servlet.* APIs, so you need to update your code to use newer Java artifacts like the Jakarta namespace.
- Use Java Enterprise Edition 8 (EE8): This option allows you to use javax.servlet.* APIs, but you need to make minor configuration changes to your appengine-web.xml file.
If you don’t use legacy bundled services, you can simply update the version in your app.yaml file to “21”.
Here are some resources that you may find helpful:
- App Engine standard environment for Java 11 and Java 17 release notes: https://cloud.google.com/appengine/docs/standard/java-gen2/runtime
- Java runtime environment - App Engine: https://cloud.google.com/appengine/docs/standard/java-gen2/runtime
- Runtime support schedule: https://cloud.google.com/appengine/docs/standard/lifecycle/support-schedule
Hi Christian, you wrote
if you don’t use legacy bundled services, you can simply update the version in your app.yaml file to “21”.
What if I use legacy bundled services like Datastore, Images, Memcache - will I be able to run Java 21 Spring Boot 3.4 application at all? If yes, then can I use Spring JAR in my case?
services, you can simply update the version in your app.yaml file to “21”.