我有一个 gradle 项目,由 3 个部分组成:客户端、公共(public)和服务。
客户端项目和服务项目中都使用了一些类,因此我想创建一个通用模块并从中构建一个 jar,然后将其作为库导入其他两个项目中。我将共享类放在公共(public)模块中,我没有创建主类,因为我想投影只提供其他类,所以它看起来像这样:
然后我尝试将它作为库导入其他项目并构建它们,但是当我尝试使用 gradle 构建它时,它会引发一堆关于来自公共(public)模块的类的错误:
我在网上找不到任何关于如何使用 gradle 制作通用模块的教程。任何帮助,将不胜感激!
最佳答案
假设所有三个模块都是同一个多模块构建的一部分,那么在 client\build.gradle
和 service\build.gradle
您添加:
dependencies {
implementation project(':common')
}
project(:module)
语法在 Project dependencies docs 中描述.但是,如果
common
, client
和 service
是独立的项目,不共享同一个根 build.gradle
您必须发布 common
模块到共享存储库中,并像任何常规依赖项一样使用它。最容易使用 Maven 本地存储库。
关于java - 如何创建其他项目使用的通用 gradle 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60685569/