繁体   English   中英

在 AWS Lambda 上上传一个胖子 jar 但 java.lang.NoClassDefFoundError 不断出现

[英]Uploading a fat jar on AWS Lambda but the java.lang.NoClassDefFoundError is consistently coming

我有两个 maven 项目。 我从一个项目(通过使用 mvn 包)创建了一个 jar 文件,并将其导入另一个 maven 项目。 我在我的最终 maven package jar 中包含了 jar 文件,方法是添加 maven 依赖项,然后使用 maven 阴影和程序集插件创建一个完整的链接 88202887889010

https://intellipaat.com/community/6786/how-to-add-local-jar-files-to-a-maven-project 如何将本地 jar 文件添加到 Maven 项目? http://tutorials.jenkov.com/maven/maven-build-fat-jar.html

不知何故,似乎没有什么可以改变错误,每当我通过 aws lambda 上传我的代码时,错误都是一致的,并且找不到我的外部 jar 中的类。

如果您使用 spring 和云服务器功能,要自动装配,在 AWS Lambda 中,您需要在下面添加代码并将自动装配在同一个 package 中

static AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(Fam.class.getPackage().getName());
public Fam() { ctx.getAutowireCapableBeanFactory().autowireBean(this); }

在这里了解更多:

aws lambda function 与 spring 自动装配依赖项

https://www.profit4cloud.nl/blog/just-spring-enabled-aws-lambdas/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM