This PR makes the jar compatible with java 8 by restricting the language feature set to java 8, and compiling with the appropriate target. It should still be compatible with java 9+ JVMs.
This commit is broken up into 2 main parts. The first commit is a bare-bones changeset that is the real change I'm looking for. Edit: as such, I suggest starting the review by looking at just the first commit.
The second and third commits are opinionated refactorings. As such, I'd be happy to sideline these changes and retarget just the first commit if you feel it's more appropriate.
I've tested this on OS X with java 8, and it works. I'm happy to help test this in other environments if desired.
Cheers!
Note: I think there are some cool things you may be able to do in the future if desired - the static binaries could be packaged into the the jar(s) so that the client only needs to do a single download.
This PR makes the jar compatible with java 8 by restricting the language feature set to java 8, and compiling with the appropriate target. It should still be compatible with java 9+ JVMs.
This commit is broken up into 2 main parts. The first commit is a bare-bones changeset that is the real change I'm looking for. Edit: as such, I suggest starting the review by looking at just the first commit.
The second and third commits are opinionated refactorings. As such, I'd be happy to sideline these changes and retarget just the first commit if you feel it's more appropriate.
I've tested this on OS X with java 8, and it works. I'm happy to help test this in other environments if desired.
Cheers!
Note: I think there are some cool things you may be able to do in the future if desired - the static binaries could be packaged into the the jar(s) so that the client only needs to do a single download.