A50*_*01X 5 amazon-web-services docker aws-lambda aws-toolkit
我在运行 AWS Lambda 时收到此错误No response from invoke container for Function。我希望它返回我定义为输出的“hello world”字符串:
我也用这个更简单的 Lambda 函数尝试过,但得到了同样的错误:
public class App implements RequestHandler<String, String> {
public String handleRequest(final String input, final Context context) {
return "H";
}
}
Run Code Online (Sandbox Code Playgroud)
我在本地启动 Docker 以使用 Docker 快速启动终端运行此 Lambda:
我可能还需要在 Docker 中做其他事情吗?
这就是我使用 IntelliJ 插件 AWS Toolkit 创建新的 AWS Lambda 项目的方法:
并选择以下设置:
Invalidate Caches and Restart:然后项目正确加载,但我没有在我的 App 类旁边看到 Lambda 符号:
Import as Maven project. 这有效,我现在看到 Lambda 符号:但是我在 AppTest 类中收到一个新错误,当我尝试运行它时,它说找不到应用程序处理程序。5.我通过更改APIGatewayProxyRequestEvent为RequestHandler“对象”解决了这个问题:
我从未尝试过以您描述的方式构建和执行 Lambda 函数。就个人而言,我使用 IntelliJ 和 Java Lambda 运行时 API 构建 Lambda 函数,然后使用 Maven 将其打包并使用 AWS 管理控制台进行部署:
https://console.aws.amazon.com/lambda/home
您可以从控制台测试它并在 Cloudwatch 日志中查看输出。这可以正常工作。有关如何使用 Maven 打包 Lambda 函数并使用 AWS 管理控制台部署它的更多信息,请参阅此 AWS 教程:
如果您按照本教程中指定的方式构建示例 Lambda 函数,则不会出现任何问题:
public class App implements RequestHandler<String, String> {
public String handleRequest(final String input, final Context context) {
return "H";
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3218 次 |
| 最近记录: |