Comment by procaryote

4 months ago

> engineers simply lost the ability to succinctly package applications and their dependencies into simple to distribute and run packages.

but this is what docker is

If anything, java kinda showed it doesn't have to suck, but as not all things are java, you need something more general

With the difference that with docker you are shipping the runtime to your source code as well.

  • which is great when you realize that not all software is updated at the same time.

    how managing multiple java runtime versions is supposed to work is still beyond me... it's a different tool at every company, and the instructions never seem to work

    • It's less complicated than you might think. A Java Development Kit (JDK) is a filesystem directory, and includes everything necessary to run a Java program. Most of the mysterious installers and version managers are managing a collection of these JDK directories in some fixed location on disk. You can download a JDK directory (tarball), and use the `java` binary within it directly.

      There is also a convention of using the `JAVA_HOME` environment variable to allow tools to locate the correct JDK directory. For example, in a unix shell, add `$JAVA_HOME/bin` to your `PATH`.