ohai.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
A cozy, fast and secure Mastodon server where everyone is welcome. Run by the folks at ohai.is.

Administered by:

Server stats:

1.8K
active users

#jdk

3 posts3 participants0 posts today

Let's Take a Look at... JEP 483: Ahead-of-Time Class Loading & Linking! morling.dev/blog/jep-483-aot-c
#Java #jdk #jep483

www.morling.dev · Let's Take a Look at... JEP 483: Ahead-of-Time Class Loading & Linking! In the "Let’s Take a Look at…​!" blog series I am exploring interesting projects, developments and technologies in the data and streaming space. This can be KIPs and FLIPs, open-source projects, services, relevant improvements to Java and the JVM, and more. The idea is to get some hands-on experience, learn about potential use cases and applications, and understand the trade-offs involved. If you think there’s a specific subject I should take a look at, let me know in the comments below. Update March 28: This post is on being discussed Hacker News 🍊 Java 24 got released last week, and what a meaty release it is: more than twenty Java Enhancement Proposals (JEPs) have been shipped, including highlights such as compact object headers (JEP 450, I hope to spend some time diving into that one some time soon), a new class-file API (JEP 484), and more flexible constructor bodies (JEP 492, third preview). One other JEP which might fly a bit under the radar is JEP 483 ("Ahead-of-Time Class Loading & Linking"). It promises to reduce the start-up time of Java applications without requiring any modifications to the application itself, what’s not to be liked about that? Let’s take a closer look!

Dear Gradle, Why So Stubborn?
Do I do something wrong?

Watching juniors try to set up a project and being greeted by cryptic stack traces like it's some kind of initiation ritual.

`Unsupported class file major version 61`
`invalid CEN header zip64 no access package`, ...

Java can compile code for older versions just fine.
It's literally designed for that.
Oh why, must Gradle behave like a bitter librarian who refuses to hand over a book unless I whisper the exact Dewey Decimal Code?
Every other Language will laugh again at java, seeing this.

💡 Why is Gradle bound to a java version? And if Gradle knows it needs Java 11… why doesn't it just do this for me?
Like using `/usr/libexec/java_home -v 11` in background?

🤖 Is there a clean way to force Gradle into submission without adding another tool like SDKMAN or jabba or YunaBraska/gradle-java-fix or whatever the trendy painkiller of the week is?