我们如何使用Maven生成AWS Lambda的zip部署包以及根级别的所有已编译的类文件和资源文件?

问题描述 投票:2回答:1

我正在尝试使用Java为AWS Lambda创建部署包。我们一直在使用maven-shade-plugin来生成超级jar。但是我在best practice部分的AWS Lambda的Function Code中看到了它,

通过将依赖项.jar文件放在单独的/ lib目录中,减少Lambda解压缩在Java中编写的部署包所需的时间。这比将所有函数的代码放在具有大量.class文件的单个jar中更快。

所以在我看来,生成一个zip部署包可以减少冷启动时间。通过遵循这个link,我可以看出zip部署的要求是:

根级别的所有已编译的类文件和资源文件。 所有必需的jar都运行/ lib目录中的代码。

但是,我无法使用Maven生成此类zip文件。我尝试按照maven-assembly-plugin提到的步骤配置here

生成的zip文件基本上包含我在根级别的jar,而不是最佳实践中提到的.class文件。

我是否错误地理解了这个最佳实践建议,或者任何人都可以告诉我如何使用maven实现这一目标?

java maven aws-lambda maven-assembly-plugin
1个回答
0
投票

引用的部分并未说明您应该上传.class文件。它只是说你应该将依赖项与你自己的jar分开。这就是程序集插件的功能。

© www.soinside.com 2019 - 2024. All rights reserved.