Multiple versions? The JVM is generally backwards compatible. It's pretty rare where an "old version" it is actually required. Plus. Java 8 has been out for over 2.5 years, which is practically an eternity in development time. In the event you do actually need multiple versions, setting JAVA_HOME and maybe your PATH is hardly rocket science.
There's a HUGE class of problems that you simply don't have by using go...
Don't get me wrong... I really like C# (not a fan of Java), but I wouldn't consider using it for a lot of the places where Go or Rust are used very well. Frankly, I'd just assume use node for any higher level stuff, Go for anything node isn't a good enough fit for, and Rust for anything system (Ie os/hardware) related.
A fat jar is a single runnable binary. It makes deploying Java super simple and is roughly equivalent to Go's single binary.