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

2019-08-01 16:05:53 +08:00
 Variazioni

我有一个多模块 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

2362 次点击
所在节点    问与答
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/588241

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX