使用 gradle 构建 distZip/Pkg

Build distZip/Pkg using gradle

> Below is the project folder structure that i am working with:
>     [root]
>       -build.gradle 
>       [project1]
>          -build.gradle

Project1 有很多主要的 classes。 Project1 build.gradle 中的各个任务在使用不同的 main-class 以不同的 jarname 执行任务时创建 jar 文件。

假设我需要从 root 的 build.gradle 调用 project1 的 build.gradle 中的任务,并从那里构建一个 distZip。我该怎么做?

到目前为止我尝试过的事情:

  1. 我在项目 1 的 build.gradle 中创建了一个子任务 确实调用了 jar 文件构建任务,但它不执行 distZip。
  2. 我试过调用 distZip,它确实构建了一个 zip 文件夹,但使用默认的 main class,而不是特定的 main class 不同的任务。

还有一个问题是要构建 .pkg 而不是 zip?

对我有用的解决方案是

1) 使用 build.gradle 创建了一个依赖于 project1 的外部项目,该项目需要在创建 .zip 之前构建。

2)在 /root/build

上创建了一个 zip 任务

3) 在 project1 中创建了一个任务,将所有需要的文件复制到 /root/build 个文件夹。

4) 在此复制任务上创建了对项目 assemble 的依赖。