如何解决';加载类com.amazonaws.lambda.demo.lambdFunctionHandler时出错:javax/mail/MessaginException';?

如何解决';加载类com.amazonaws.lambda.demo.lambdFunctionHandler时出错:javax/mail/MessaginException';?,java,amazon-web-services,aws-lambda,Java,Amazon Web Services,Aws Lambda,我想将Java代码上传到AWS中的Lambda函数。 当我上传一个JAR文件时,我得到一个错误: { "errorMessage": "Error loading class com.amazonaws.lambda.demo.LambdaFunctionHandler: javax/mail/MessagingException", "errorType": "java.lang.NoClassDefFoundError" } 你知道如何解决这个问题吗?当你创建一个使用第三方jar的

我想将Java代码上传到AWS中的Lambda函数。 当我上传一个JAR文件时,我得到一个错误:

{
  "errorMessage": "Error loading class com.amazonaws.lambda.demo.LambdaFunctionHandler: javax/mail/MessagingException",
  "errorType": "java.lang.NoClassDefFoundError"
}

你知道如何解决这个问题吗?

当你创建一个使用第三方jar的Lambda函数时,你必须将它们打包到上传的zip文件中


因此,在您的案例中,包括依赖项,并将其与代码一起打包(您不一定要手动完成,但要将其合并到构建过程中,例如,在Maven中生成“uber-jar”或在Gradle中生成“fat-jar”)并使用新工件更新Lambda函数

按照AWS的说明创建Java包


您缺少javax.mail软件包

值得一提的是,您不必手动完成,而是将其纳入构建过程,例如,在Maven中生成“uber-jar”或在Gradle中生成“fat-jar”-有一些插件可以自动完成该过程。感谢@jannis,将您的评论纳入了答案中