簡體   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