“sls dynamodb start”抛出 spawn java ENOENT

Posted

技术标签:

【中文标题】“sls dynamodb start”抛出 spawn java ENOENT【英文标题】:"sls dynamodb start" throws spawn java ENOENT 【发布时间】:2019-01-26 06:48:55 【问题描述】:

在 Mac 上运行,我使用 aws-nodejs 模板创建了一个基本的无服务器服务:

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

之后我使用以下命令添加无服务器本地:

npm install serverless-dynamodb-local
serverless dynamodb install

无论我做什么,我都无法启动 dynamodb-local。当我跑步时

serverless dynamodb start

我收到以下错误:

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)

运行 java --version 给我以下信息:

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)

我正在使用 Node 8.11.4 和无服务器 1.30.1。 Aws-sdk 也已安装,我已经设置了我的个人资料。

谢谢

【问题讨论】:

【参考方案1】:

显然 serverless-dynamodb-local@0.2.31 版本存在错误。

issue on github

我已经通过使用降级到 0.2.30 版

npm uninstall serverless-dynamodb-local
sls dynamodb uninstall

npm install serverless-dynamodb-local@0.2.30
sls dynamodb install

【讨论】:

这应该是公认的答案。在 Github 上的所有问题中错过了这个:/ 尝试了一堆解决方案,但只有一个有效。谢谢! 希望插件能尽快更新。这很难找到解决办法。谢谢! 仅供参考,直到今天我已经安装了^0.2.35,没有任何问题。原来0.2.36 刚刚发布并且有同样的问题。我暂时留在0.2.35,并在我的package.json中删除了胡萝卜 我在0.2.38 看到了这个问题,降级到0.2.37 修复了它...【参考方案2】:

按照serverless-dynamodb-local/issues/195 的建议,我刚刚运行sls dynamodb install --localPath ./bin 并正确安装了Dynamodb。运行serverless offline start 然后正常工作。

【讨论】:

是的!谢谢。 天哪,我开始担心了。谢谢!【参考方案3】:

确保您已安装 jre 以运行 dynamodb jar。否则会抛出这个错误。

【讨论】:

以上是关于“sls dynamodb start”抛出 spawn java ENOENT的主要内容,如果未能解决你的问题,请参考以下文章

ADFS 2.0 中的 SAML 2 签名错误

Spark read() 有效,但 sql() 抛出 Database not found

Scala 学习笔记之集合 Option

Hibernate Search 手动索引抛出“org.hibernate.TransientObjectException:实例未与此会话关联”

Spring Boot 2.0.0.M4 OAuth2 令牌端点抛出 org.springframework.web.HttpRequestMethodNotSupportedException

Spring Boot 1.5.9和嵌入式jetty服务器在运行时抛出空指针异常?