article --summary
The summary
This post walks through checking a Java codebase for readiness to run on AWS Graviton processors, which offer better price-performance than comparable x86 instances. The main obstacle is usually not the Java code itself but whether each dependency, especially native libraries bundled as compiled binaries, supports Arm64.
The readiness assessment is read-only: it reports findings with severity, category, and file references, and a second skill resolves them by updating native libraries, upgrading dependencies, adding aarch64 handling, and adjusting Dockerfiles and JVM flags. Remote runs execute on x86 and cannot build or test Arm64 output, so validation requires an Arm64 host, which is why the example runs locally on a Graviton instance.
The example uses a Gradle project on Java 21 with a native BLAS bridge and scientific data libraries. You connect a source, run the analysis from the CLI or console, review the severity breakdown, then remediate, validate on Arm64, and deploy. Deployment itself happens in your own Arm64 pipeline, outside the scope of the tool.
Editorial note: This is a summary of an article first published by AWS DevOps Blog. The full piece is on their site.