web-dev-qa-db-fra.com

"sls dynamodb start" lance Java ENOENT

sous Mac, j'ai créé un service de base sans serveur utilisant le modèle aws-nodejs:

serverless create --template aws-nodejs --path TestService

Après cela, j'ai utilisé les commandes suivantes pour ajouter un serveur local sans serveur:

npm install serverless-dynamodb-local
serverless dynamodb install

Quoi que je fasse, je ne peux pas démarrer dynamodb-local. Quand je cours 

serverless dynamodb start

Je reçois l'erreur suivante:

Error: spawn Java ENOENT
at _errnoException (util.js:992:11)
at Process.ChildProcess._handle.onexit (internal/child_process.js:190:19)
at onErrorNT (internal/child_process.js:372:16)
at _combinedTickCallback (internal/process/next_tick.js:138:11)
at process._tickDomainCallback (internal/process/next_tick.js:218:9)

Lancer Java --version me donne les informations suivantes:

Java 10.0.2 2018-07-17
Java(TM) SE Runtime Environment 18.3 (build 10.0.2+13)
Java HotSpot(TM) 64-Bit Server VM 18.3 (build 10.0.2+13, mixed mode)

J'utilise le nœud 8.11.4 avec 1.30.1 sans serveur. Aws-sdk est également installé et j'ai configuré mon profil.

Merci

12
Nahum Bazes

Apparemment, il existe un bogue avec la version [email protected].

numéro sur github

J'ai rétrogradé à la version 0.2.30 en utilisant

npm uninstall serverless-dynamodb-local
sls dynamodb uninstall

npm install [email protected]
sls dynamodb install
29
Nahum Bazes

En suivant les conseils de serverless-dynamodb-local/issues/195 , je viens d'exécuter sls dynamodb install --localPath ./bin et Dynamodb est installé correctement. Exécuter serverless offline start a ensuite fonctionné sans erreur. 

2
MarkC