【问题标题】:How do you build a folder into the .jar root of a spring boot gradle project?如何将文件夹构建到 spring boot gradle 项目的 .jar 根目录中?
【发布时间】:2019-06-08 01:50:42
【问题描述】:

AWS elastic beanstalk 需要在你的 jar 根目录下有一个 .ebextensions 文件夹来配置 elastic beanstalk,但我不知道如何将文件夹放到 jar 的根目录下。

通过这个 gradle 配置,我可以更改文件夹的位置:

compileKotlin {
    kotlinOptions {
        freeCompilerArgs = ["-Xjsr305=strict"]
        jvmTarget = "1.8"
    }

    processResources {
        from ('.ebextensions/') {
            into '.ebextensions'
        }
    }
}

这会将文件夹 .ebextensions 从我的项目的根目录(不是 src/main/resources)移动到

my.jar
 -> BOOT-INF
    -> classes
       -> .ebextensions

我希望我能做到into '../../.ebextensions',但这不起作用。这是不可能的吗?我需要弄清楚如何手动解压 jar,插入我的文件夹,然后重新打包吗?

【问题讨论】:

    标签: java spring-boot gradle kotlin


    【解决方案1】:

    可以通过以下方式配置名为bootJar的gradle任务:

    bootJar {
         from('.ebextensions') {
            into('.ebextensions' )
         }
    } 
    

    Packaging executable jars 说:

    可以使用bootJar 任务构建可执行jar。该任务是在应用 java 插件时自动创建的,并且是 BootJar 的一个实例。 assemble 任务自动配置为依赖于 bootJar 任务,因此运行 assemble(或 build)也将运行 bootJar 任务。

    或者你也可以配置jar任务:

    jar {
         from('.ebextensions') {
            into('.ebextensions')
        }
    }
    

    Packaging executable and normal

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-11-03
      • 2017-12-22
      • 1970-01-01
      • 2020-03-13
      • 2017-12-15
      • 1970-01-01
      • 2017-10-28
      相关资源
      最近更新 更多