UnsupportedClassVersionError when running a Databricks job on Graviton machines

Specify an appropriate ARM architecture instead of AMD.

Written by walter.camacho

Last published at: July 1st, 2025

Problem

You encounter an UnsupportedClassVersionError when running a Databricks job on Graviton machines, despite the job running successfully with Java Virtual Machine (JVM) 17 on non-Graviton machines. 

 

During execution you see an error pointing to compute using JVM 8. You install the JVM package on your cluster, but still receive an error.

UnsupportedClassVersionError: com/<your-org>/soon_oss/streaming/ingestion/config/common/EnvironmentConfig/EnvironmentConfig has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 52.0

 

Cause

You’re using an AMD JVM package on your Graviton machine: JNAME=zulu17-ca-amd64. Graviton machines use ARM architecture, not AMD.

 

Solution

1. Specify an ARM architecture instead. Refer to the Databricks SDK for Java (AWSAzureGCP) for more information.

2. Update the JVM configuration. Change the JNAME parameter to use an ARM-compatible Java distribution. 

%sh
JNAME=zulu17-ca-arm64

3. After updating the JVM configuration, rerun the Databricks job on the Graviton machine.