使用 Java 的 gradle 与 AWS Lambda Layers 进行有效开发,用于 Spring Boot 应用程序

Sni*_*192 7 gradle spring-boot aws-lambda aws-lambda-layers

我想要提高 Lambda 开发效率。我期望的最终状态是将我的开发过程分为 2 个不同的构建:

  • Lambda Layer Build - 构建我的 Lambda 层,其中包含我的项目的所有依赖项
  • 应用程序代码 - 没有所有依赖项的实际应用程序

我很高兴利用serverless framework与 Lambda 的集成,但我仍然无法弄清楚如何获取 gradle 而不是构建 FatJar,从而拥有一个包含所有依赖项的文件夹/ja​​r,以及我的应用程序代码之一。

在这里尝试过这个教程,它的功能如下:

task buildZip(type: Zip) {
    baseName = "aws-java-github-webhook-gitstats"
    from compileJava
    from processResources
//    into('lib') {
//        from configurations.runtime
//    }
}


task buildLayer(type: Copy) {
    into "$buildDir/layer/java/lib"
    from configurations.runtime
}
Run Code Online (Sandbox Code Playgroud)

但我认为该spring-dependency插件搞乱了这种方法(我正在使用spring-boot)。有谁有一个很好的配置设置来做到这一点,我可以利用吗?