No se puede iniciar DynamoDB Proceso local
TL;DR: DynamoDB Local (una aplicación Java) no se pudo iniciar. Las causas habituales son un tiempo de ejecución Java faltante o demasiado antiguo, el puerto 8000 ya utilizado o el complemento sin servidor dynamodb nunca descargó el archivo jar. Corrija Java, libere el puerto o vuelva a instalarlo.
Qué significa
Lo verás desde el complemento serverless-dynamodb / serverless-dynamodb-local, o cuando ejecutes el jar directamente:
Unable to start DynamoDB Local process!El proceso hijo que ejecuta el emulador local no consiguió arrancar o se cerró de inmediato.
Por qué ocurre
- No hay Java, o una versión incompatible. DynamoDB Local necesita un runtime de Java — las versiones actuales (v2.6.0 y más nuevas, incluida la v3.x) requieren JRE 17+. Si
java -versionfalla, ahí está; si imprime una versión antigua, a menudo verás UnsupportedClassVersionError en la salida subyacente. - Puerto ya en uso — hay algo más en el
8000(una instancia anterior que no se cerró). - El jar nunca se instaló —
sls dynamodb installno se ejecutó o falló, así que no hay nada que arrancar. - Un problema de ruta/permisos con el directorio de instalación.
- Desajuste de Apple Silicon / arquitectura con un jar antiguo que incluye bibliotecas SQLite nativas.
Fallos de descarga
Cuando npx serverless dynamodb install o la descarga del plugin de Maven falla
(proxy de red, inspección TLS corporativa o disco lleno), el comando de arranque no
encuentra ningún jar y sale con el mismo envoltorio genérico Unable to start DynamoDB Local process!
— revisa el log del plugin en busca de ENOENT o errores HTTP antes de perseguir a Java.
Cómo solucionarlo
- Instala/verifica Java 17+:
java -version. Si falta o es demasiado antiguo, instala un JDK/JRE actual (p. ej. Temurin o Corretto 17+). - Reinstala DynamoDB Local:
npx serverless dynamodb install - Libera el puerto (o cámbialo): averigua qué hay en el 8000 y deténlo —
lsof -i :8000 # then kill the PID, or configure a different port - Usa la imagen Docker oficial para evitar los problemas de Java/arquitectura por completo:Docker incluye un JRE compatible — no hace falta instalar Java en local.
docker run -p 8000:8000 amazon/dynamodb-local - Apunta tu cliente a ella con una región + endpoint de marcador (consulta Missing region in config).
Conéctate desde DynoTable
Si Java/la arquitectura o una descarga fallida del jar bloquean Local, ejecuta la imagen
Docker oficial y conecta DynoTable sin un JRE local (Instalar DynoTable).
En Ajustes → Perfiles → Añadir perfil, pon el endpoint http://localhost:8000,
elige una región de marcador y usa credenciales ficticias alfanuméricas — luego Probar
conexión. Esa vía evita por completo el fallo de arranque Unable to start DynamoDB Local process!.
Paso a paso: Ejecutar DynamoDB Local.
Si el plugin nunca descargó el jar, vuelve a ejecutar npx serverless dynamodb install
y confirma que el directorio de instalación tiene permiso de escritura — los errores de permisos
aparecen como el mismo mensaje genérico de arranque, sin traza de Java. Cuando Local esté en marcha,
carga datos de prueba con el conversor de DynamoDB JSON.
Errores relacionados
- No se pudo conectar a DynamoDB Local
- DynamoDB Local UnsupportedClassVersionError — la variante de Java demasiado antiguo de este fallo.
- DynamoDB Local sqlite4java errors — la variante de biblioteca nativa/arquitectura.
- Falta región en la configuración
- Aprende: Ejecutar DynamoDB Local
Referencias
- Deploying DynamoDB locally on your computer — AWS DynamoDB Developer Guide (JRE 17+ requirement for v2.6.0+, launch command, default port 8000)
- DynamoDB local usage notes — AWS DynamoDB Developer Guide (
-portand the other runtime options) - amazon/dynamodb-local — Docker Hub (official image;
docker run -p 8000:8000 amazon/dynamodb-local)
Verificado por última vez el 2026-07-13 contra la documentación oficial de AWS enlazada arriba.