【发布时间】:2018-11-14 23:50:01
【问题描述】:
我有一个 go 应用程序,结构如下:
cmd
|
报告
|
main.go
main.go 导入 internal/reports 包并有一个函数 main(),它将调用委托给 aws-lambda-go/lambda.Start() 函数。
代码正在构建运行命令(sn-p):
cd internal/reports && go build handler.go
cd ../..
go build -o reports ../cmd/reports/main.go && chmod +x reports && zip reports.zip reports
reports.zip 被上传到 AWS Lambda,当按下 Test 按钮时会抛出错误:
{
"errorMessage": "fork/exec /var/task/reports: exec format error",
"errorType": "PathError"
}
reports 设置为 Lambda 的 Handler。
此外,代码是在 Ubuntu 14.04 机器上构建的,作为 aws/codebuild/ubuntu-base:14.04 Docker Image 的一部分,在 AWS CodeBuild 上。这里应该没有环境问题,即使错误表明存在跨平台问题。
有什么想法吗?
【问题讨论】:
标签: amazon-web-services go aws-lambda aws-lambda-go