This commit adds support for cross platform builds of the CLI using
jlink via each support version of JDK 16 of Amazon Corretto (we'll bump
to JDK 17 when it's available). Each supported build target is built by
downloading the appropriate JDK from Corretto and running jlink.
The Dockerfile has been updated to now use the prebuilt binary for
linux-x86_64, and will now use application class data sharing to improve
CLI startup time in the Docker container.
A couple dependencies were updated, including Gradle, in order to build
on JDK 16. JDK 16 also complained about creating an explicitly boxed
value, so that was addressed too.
Future work should include building signed tar.gz and zip files, creating a
Mac pkg file via jpackage, and creating an msi via jpackage.
This commit updates Smithy to build with Gradle 6. Gradle 6 is currently
in RC and not yet stable, so this should not be merged until it's
actually out.
1. Updates to latest version of SpotBugs to fix a build issue.
2. Updated some Checkstyle configuration to work with newer versions of
CheckStyle.
3. Made minor code style tweaks to please CheckStyle.