首页 文章

使用Gradle和Spring Boot Gradle插件时,如何从其他模块复制spring boot重新包装的jar?

提问于
浏览
0

我有一个多模块gradle项目,它使用Spring Boot Gradle插件,其中一个模块构建spring boot重新打包jar,另一个模块尝试构建docker容器 .

如何从不同的模块复制 spring 启动重新包装的jar?

我试过这个:

task copyBootJar(type: Copy, overwrite: true) {
    from project(':foo-bar:spring-boot-project').jar
    into "${buildDir}/libs"
}

build.dependsOn copyBootJar

但不幸的是,只复制原始未包装的jar .

1 回答

  • 1

    我面临的问题是:foo-bar:spring-boot-project'尚未评估 .

    我在这里找到了答案:http://gradle.1045684.n5.nabble.com/Trouble-accessing-sibling-project-configuration-td3384352.html

    解决方案是将以下代码添加到build.gradle文件中:

    evaluationDependsOn(':foo-bar:spring-boot-project')
    

    所以整个解决方案现在看起来像这样:

    evaluationDependsOn(':foo-bar:spring-boot-project')
    
        task copyBootJar(type: Copy, overwrite: true) {
            from project(':foo-bar:spring-boot-project').jar
            into "${buildDir}/libs"
        }
    
        build.dependsOn copyBootJar
    

相关问题