This number shouldn't scale linearly. My assumption is even if you were to build a more complex program it wouldn't be much farther away from 16mb ( considering the dependencies for the program remain fairly consistent )
@@ashraf.50150 true, should have used golang or rust instead ;) the whole premise of java, to write once run anywhere, isn't useful in 2023 we can just compile the binary in a CI/CD pipeline for the target architecture if we need to compiler tooling is so much better than 1996 when java was thought to be the best idea ever, now it's just a remnant of history and nobody needs it anymore
this is a bad idea, you are throwing away all the performance benefits for what? startup time? this will never have the peak performance of JIT after it optimised your code and most importantly it will never have the latency characteristics that you can have with normal jvm... I dont know how you handle GC and a lot of other things but i do not see how this is useful beyond simple things like cli apps or some quick executable that you wanna share and let it just run without someone worrying about jvm and how to run a jar file...
Yes, well said. A large-ish application will probably run faster over time on a JVM and will be far easier to maintain as a set of jar and/or class files. But ability to distribute a small command-line executable without having to worry about requiring a massive JVM... very nice.
I think use in cloud / serverless (not my area) has a lot of people very excited, because long-running but inconsistently loaded processes turn out very costly. If you can spin up/down apps fast, while still maintaining good response time/latency, you can save a lot.
Incredible!
My God why have I never heard of this. This makes my code so fast.
This get started app in Community edition doesn't work as of today
How might you use this to create a mobile application? Are there mobile targets available?
What I heard is that Android Apks are written in Java but they don't really use JVM.
I take it that you lose the ability to use tools like JFR and library features like Prometheus jvm metrics.
Native image is very fast
16MB for an executable that prints a single string to the terminal... :O
This number shouldn't scale linearly. My assumption is even if you were to build a more complex program it wouldn't be much farther away from 16mb ( considering the dependencies for the program remain fairly consistent )
@@Hasibix congratulations on missing the entire point of my comment.
@@chrisalexthomasyou can build a better JVM compiler? Impressive
Lol, try node or deno or bun, you're gonna get about 60mb to 85mb😢
@@ashraf.50150 true, should have used golang or rust instead ;)
the whole premise of java, to write once run anywhere, isn't useful in 2023
we can just compile the binary in a CI/CD pipeline for the target architecture if we need to
compiler tooling is so much better than 1996 when java was thought to be the best idea ever, now it's just a remnant of history and nobody needs it anymore
this is a bad idea, you are throwing away all the performance benefits for what? startup time? this will never have the peak performance of JIT after it optimised your code and most importantly it will never have the latency characteristics that you can have with normal jvm...
I dont know how you handle GC and a lot of other things but i do not see how this is useful beyond simple things like cli apps or some quick executable that you wanna share and let it just run without someone worrying about jvm and how to run a jar file...
Yes, well said. A large-ish application will probably run faster over time on a JVM and will be far easier to maintain as a set of jar and/or class files. But ability to distribute a small command-line executable without having to worry about requiring a massive JVM... very nice.
I think use in cloud / serverless (not my area) has a lot of people very excited, because long-running but inconsistently loaded processes turn out very costly. If you can spin up/down apps fast, while still maintaining good response time/latency, you can save a lot.
In Kubernetes world, pods/containers are constantly shutdown or restarted. This is required for those scenarios
Works in Linux, doesnt work in Windows.... FU and byebye with your vaporware
rude
Who uses windows