【问题标题】:ClassNotFoundException when Lambda Function gets invoced调用 Lambda 函数时发生 ClassNotFoundException
【发布时间】:2020-11-02 11:23:13
【问题描述】:

将 Spring Cloud Function 上传到 AWS Lambda 并对其进行测试后,我得到:

Class not found: example.Hello: java.lang.ClassNotFoundException
java.lang.ClassNotFoundException: example.Hello
    at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:348)

但是我的包中没有任何 Hello 类,并且项目中没有使用字符串“Hello”(我使用了 Eclipse 搜索)。

如何找到根本原因?

【问题讨论】:

    标签: java spring-boot aws-lambda classloader classnotfoundexception


    【解决方案1】:

    您需要更新Lambda's Function Code

    在 Lambda 中,在函数代码下,您需要指定处理程序信息,而不是“example.Hello”,您需要将其替换为您自己的请求处理程序。

    此链接显示您将如何在 AWS Lambda 设置指令 9 中执行此操作。在此示例中,处理程序信息是“com.amazon.asksdk.helloworld.HelloWorldSpeechletRequestStreamHandler”,这就是您要替换的内容而不是“example.Hello”

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-12-22
      • 1970-01-01
      • 1970-01-01
      • 2023-02-08
      • 1970-01-01
      • 2016-09-30
      相关资源
      最近更新 更多