【发布时间】:2022-06-14 04:12:46
【问题描述】:
我想使用 quarkus 创建一个 java 项目,并希望使用 GraalVm 进行提前编译以减少 AWS lambda 中的冷启动时间。
当我在 AWS Lambda 中部署它并运行测试时,我收到以下错误:
Class not found: de.timguy.lambda.GreetingLambda: java.lang.ClassNotFoundException
java.lang.ClassNotFoundException: de.timguy.lambda.GreetingLambda. Current classpath: file:/var/task/
我采取的步骤
-
- Quarkus 版本:2.8.2.Final (gradle.properties)
-
gradlew build -Dquarkus.package.type=native -Dquarkus.native.container-build=true
Version info: GraalVM 22.0.0.2 Java 11 CE 3 user-provided feature(s) - io.quarkus.runner.AutoFeature - io.quarkus.runtime.graal.DisableLoggingAutoFeature - io.quarkus.runtime.graal.ResourcesFeature Produced artifacts: /project/quark2-1.0.0-SNAPSHOT-runner (executable) /project/quark2-1.0.0-SNAPSHOT-runner.build_artifacts.txt Finished generating 'quark2-1.0.0-SNAPSHOT-runner' in 11m 54s. BUILD SUCCESSFUL in 12m 52s
- AWS - 创建函数“quark2”
- 运行时“Java 11 Coretto”
- 编辑运行时设置:Handler = de.timguy.lambda.GreetingLambda
- 通过 S3 上传 quark2/build/runner.zip
- 测试 -> ClassNotFoundException(见顶部的完整错误)
【问题讨论】:
标签: java aws-lambda graalvm-native-image quarkus-native