Gradle多项目-在项目之间共享源代码

Leg*_*ato 5 java gradle build.gradle

在 gradle 多项目(java)中,是否可以共享源代码,以便每个项目都可以访问它并对其进行编译?

例如,子项目“mouse”、“cat”、“dog”,分别在每个 - 、Mouse.java Cat.java和中包含一个 java 类Dog.java。这些类中的每一个都扩展了Animal.java.

需要注意的是,当构建任何给定的子项目(例如“鼠标”)时,它会定义一些编译时依赖项(来自 Maven Central),并且需要使用这些依赖项Animal.java进行编译。其他项目也是如此。因此,我无法编译并打包,然后使用该 jar 作为这 3 个项目的依赖项。Animal 必须与依赖项目的源代码一起重新编译。结果应该是 mouse.jar、cat.jar 和dog.jar,每个都位于各自的项目构建目录中(像往常一样),并且每个还包含其 Animal.class 的版本。Animal.java

我知道这个例子不是很直观(因为 Animal 应该足够通用,可以独立编译)。这是我能找到的最好的方法来模拟我试图解决的难以解释的场景。

在 Gradle 中可以做到这一点吗?

谢谢。