V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Variazioni
V2EX  ›  问与答

问个关于 gradle 的问题,在执行 gradle build 时如何同时执行自定义的 task?

  •  
  •   Variazioni · 2019-08-01 16:05:53 +08:00 · 2366 次点击
    这是一个创建于 1941 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我有一个多模块 Spring Boot 的工程,并且子工程均引用了'org.springframework.boot'插件,目录结构如下
    /projectA
    /projectA/serviceA
    /projectA/serviceB
    /projectA/serviceC
    在 projectA 目录执行 gradle build 时,分别会在三个子工程的 build/libs 目录下生成 jar 包。
    现在我想将打好的 jar 包统一复制到某个路径,并且我在 /projectA/build.gradle 中添加了如下代码:

    allprojects {
        task copy () {
            doLast { task ->
                copyJars() {
                    CopySpec copySpec ->
                        from "${project.getBuildDir()}\\libs"
                        into "D:\\"  
                }
            }
        }
    }
    

    此时,在 /projectA 目录下执行 gradle copy,即可将三个子工程的 jar 包复制到 D 盘根目录下。

    需求是这样的,我希望在 /projectA 目录下执行 gradle build 时,在编译打包完成后自动执行 copy 任务,应该如何编写 build.gradle 文件?

    gradle 版本为 5.5

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2789 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 47ms · UTC 13:01 · PVG 21:01 · LAX 05:01 · JFK 08:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.