Hacker News new | ask | show | jobs
by pjmlp 4052 days ago
> as opposed to utilities written in Java/Python/Ruby/Node/etc. which require their respective runtime to be installed.

In Java's case only by those that don't know what the Java eco-system offers.

There are plenty of commercial JVMs that offer AOT compilation, including static linking.

Plus as of Java 8, there is even a packager as part of the reference JDK.

2 comments

I'm curious to know more about these. Are any free? Are any open source? These aren't rhetorical questions, there's a ton of Java stuff I'd want to test it with.

I tried robovm, it actually worked nicely but apparently only does 32 bit. Also, the simple reference HelloWorld was nearly 10MB, the build process took 20 seconds, and running it took 15x longer than a comparable one in Go. I don't mean to knock it, what it does is amazing, but it's not a viable replacement for simple static command line tools.

> Are any free? Are any open source?

No, most of those that produce good quality code are commercial, hence why I stated that on my comment.

Some of most well known,

http://www.excelsiorjet.com/

http://www.atego.com/products/atego-perc/

https://www.aicas.com/cms/en/JamaicaVM

http://www-03.ibm.com/software/products/en/real-time

https://www.codenameone.com/

Oracle Research has SubstrateVM as part of Graal, but it is still experimental.

https://wiki.openjdk.java.net/display/Graal/Publications+and...

There's also RoboVM for compiling to native binaries.