dynobase-icon
Dynobase

Error: DynamoDB Local NoClassDefFoundError

Rafal Wilinski

Answered by Rafal Wilinski

Last updated: October 23rd, 2026

Solution

NoClassDefFoundError means the JVM could not load or initialize a class needed by DynamoDB Local or an embedding application. Read the named class and earliest Caused by exception before changing the classpath.

  1. For the standalone download, extract the complete archive and keep DynamoDBLocal.jar with its DynamoDBLocal_lib directory.
  2. Run current DynamoDB Local with JRE 17 or newer. Check java -version in the same shell or process environment that launches it.
  3. For embedded use, inspect Maven or Gradle dependency resolution for excluded or conflicting libraries and mixed Local major versions.
  4. If the message says Could not initialize class, locate the earlier initialization exception. A native library failure and a missing Java class need different repairs.
java -version
java -Djava.library.path=./DynamoDBLocal_lib \
  -jar DynamoDBLocal.jar -sharedDb

Run this from the extracted distribution directory. java.library.path selects native libraries; it is not a replacement for missing Java dependencies. An UnsupportedClassVersionError instead points to a Java runtime mismatch.

DynamoDB Local 3.x moved to AWS SDK for Java 2.x and uses Maven coordinates software.amazon.dynamodb:DynamoDBLocal. Embedded applications using old com.amazonaws Local APIs need migration; adding arbitrary old SDK jars can create further conflicts. The official Docker image is an alternative when you do not need embedded mode.

See local installation and AWS documentation.

Local release history documents dependency and major-version changes.

Dynobase is a Professional GUI Client for DynamoDB

Start your 7-day free trial today

Product Features

Download
/
Pricing
/
Member Portal
/
Privacy
/
EULA
/
Twitter
© 2026 Dynobase
+
Still using AWS DynamoDB Console?
Try Dynobase to accelerate your DynamoDB workflow. Start your 7-day free trial today.