You must log in or # to comment.
I don’t have much experience with Java but my solution to this issue was to make a symlink called java8 and a symlink called java16 to run the two concurrently without needing to remember various commands to change versions. It’s worked pretty well so far.
Could also use Nix as package manager on Ubuntu. It does essentially what you say (symlinking) with guaranteed isolated dependency graphs.