Java, Kotlin and the JVM
25 subscribers
20 photos
2 videos
117 links
Java, Kotlin, Gradle, Maven, JDKs, Spring and the whole JVM ecosystem tips & tricks. 🇪🇸 & 🇬🇧
Download Telegram
Annotations processing changes in JDK 23

Up to JDK 22, this feature is enabled by default, which may have been reasonable when it was introduced in JDK 6 circa 2006, but from a current perspective, in the interest of making build output more robust against annotation processors being placed on the class path unintentionally, this is much less reasonable. Hence, starting with JDK 23, javac requires an additional command-line option to enable annotation processing.


https://mail.openjdk.org/pipermail/jdk-dev/2024-May/009028.html
Is Java heavyweight? will the container images be huge? Nope, Java is pretty good at producing decent size container images. The table below shows the container image sizes for a variety of popular open source project. Java does pretty well on these measures.

https://github.com/asaikali/modern-spring-on-kubernetes/blob/main/containerize%2Freadme.md
https://docs.gradle.org/8.9/release-notes.html

This release improves error and warning reporting for variant issues during dependency resolution. It also exposes structural details of Java compilation errors for IDE integrators, making it easier to analyze and resolve issues.
A virtual thread is not mapped 1:1 to a dedicated OS-level thread. Rather, we can think of it as a task that is scheduled to a fork-join thread pool. When a virtual thread enters a blocking call, like waiting for a Future, it relinquishes the OS thread it occupies and simply remains in memory until it is ready to resume. In the meantime, the OS thread can be reassigned to execute other VTs in the same fork-join pool

https://netflixtechblog.com/java-21-virtual-threads-dude-wheres-my-lock-3052540e231d
Java 23 will support Primitive Types in Patterns, instanceof, and switch as a preview feature. Preview features are a way of gathering feedback about the future of the language. If you are using pattern matching on boxes types take the time to test this preview feature.

https://openjdk.org/jeps/455

#java #openjdk #jep
1
Support nullness markers on Java types to indicate that a type rejects or deliberately allows nulls. This is a preview language feature.


https://bugs.openjdk.org/browse/JDK-8303099

#java #openjdk #jep
🤨1
https://quarkus.io/blog/quarkus-and-leyden/

#java #quarkus #leyden

Leyden is not a replacement for GraalVM native images but rather a substantial evolution of the JVM, and we expect it to bring some benefits to native images as well.