如何使用Gradle构建我的多项目Java软件

时间:2019-01-26 23:36:28

标签: java gradle build android-gradle

我有一个在Linux上开发的Java项目,并且正在使用gradle进行构建。我将其扩展为多个组件,但我很迷失。

到目前为止,该项目是使用gradle构建的单个命令行应用程序,其中包含单个src目录,其中包含所有Java文件。现在需要更改。

它将由三个部分组成。

A。核心Java API。 B.使用A的命令行应用程序。 C.和使用A的android应用。

现在A和B只是一个巨大的src文件夹。

java API最终将作为Github上的独立开源库签入。

构建它的正确方法是什么?我真的不知道从哪里开始。

是否应该通过gradle将核心Java api构建为一个库,然后输出到android和cli项目?

还是其他应用程序应该只是将核心api添加为包含目录?

还是应该只使用符号链接将核心api代码添加到其他版本中?

为了使这成为一个主观的问题,我对符合标准约定的一种解决方案以及对该问题最惯用的gradle方法最感兴趣。

1 个答案:

答案 0 :(得分:0)

如果您打算将“ A”作为开放源代码库发布,则可以尝试将其“ 添加到Maven中央存储库”中的过程,在该过程中您可以将其添加为任何其他依赖性。我自己还没有尝试过,但我读过它可能很乏味。

幸运的是,在Gradle中,还可以将git存储库作为依赖项添加到项目中You can find the details under this announcement blog post。因此,一旦将“ A”推送到git存储库,就可以将其添加为“ B”和“ C”的依赖项。

或者您可以从'A'到任意位置构建jar,包括原始目标目录,并将其作为本地jar包含在'B'和'C的构建脚本中

dependencies {
    implementation files("A_source_path/A_local.jar")
}