Gradle 依赖设置混乱
Gradle dependency settings confusion
将以下项目结构视为 Gradle 构建:
backend
|- adapters
|- adapter-common
|- bar-adapter
|- bar-entrypoint
|- bar-models
\- bar-services
\- foo-adapter
|- foo-entrypoint
|- foo-models
\- foo-services
|- backend-common
|- db-conn
|- backend-entrypoint
|- build.gradle
\- settings.gradle
依赖结构如下:
foo-adapter
取决于 foo-entrypoint
和 adapter-common
foo-entrypoint
取决于 foo-services
foo-services
取决于 foo-models
adapter-common
取决于 backend-common
& db-conn
现在我有一个单独的项目 api
,我需要 foo-adapter
作为依赖项。我发现 this Q&A 这似乎是相同的情况但是当我尝试它时我得到关于如何 none 其他项目(adapter-common
、db-conn
等)的错误找到了。
我是不是对 Gradle 要求太多了,告诉它只导入 foo-adapter
然后期望它自己引入并解决所有依赖关系?
有什么方法可以使它工作而无需在我的 api
设置文件中声明整个 backend
项目?
如果您的 foo-adapter 项目使用了其他项目中的一些 类,则如果没有其他项目,则无法添加。不管它是一个罐子还是只是未编译的东西。你也需要其他人。将一个项目依赖于另一个项目是一种非常糟糕的方法。最好只使用接口并将它们放入单独的项目中。因此,您的项目可以独立编译,您只需要一个组合所有这些东西的配置项目。
将以下项目结构视为 Gradle 构建:
backend
|- adapters
|- adapter-common
|- bar-adapter
|- bar-entrypoint
|- bar-models
\- bar-services
\- foo-adapter
|- foo-entrypoint
|- foo-models
\- foo-services
|- backend-common
|- db-conn
|- backend-entrypoint
|- build.gradle
\- settings.gradle
依赖结构如下:
foo-adapter
取决于 foo-entrypoint
和 adapter-common
foo-entrypoint
取决于 foo-services
foo-services
取决于 foo-models
adapter-common
取决于 backend-common
& db-conn
现在我有一个单独的项目 api
,我需要 foo-adapter
作为依赖项。我发现 this Q&A 这似乎是相同的情况但是当我尝试它时我得到关于如何 none 其他项目(adapter-common
、db-conn
等)的错误找到了。
我是不是对 Gradle 要求太多了,告诉它只导入 foo-adapter
然后期望它自己引入并解决所有依赖关系?
有什么方法可以使它工作而无需在我的 api
设置文件中声明整个 backend
项目?
如果您的 foo-adapter 项目使用了其他项目中的一些 类,则如果没有其他项目,则无法添加。不管它是一个罐子还是只是未编译的东西。你也需要其他人。将一个项目依赖于另一个项目是一种非常糟糕的方法。最好只使用接口并将它们放入单独的项目中。因此,您的项目可以独立编译,您只需要一个组合所有这些东西的配置项目。