【发布时间】:2022-01-18 06:30:18
【问题描述】:
我的 Gradle 项目中目前有 3 个子项目,结构如下:
Main Project
|
-- Project A
-- Project B
-- Common Src
Project A 依赖 Lib A 和 Common Src,Project B 依赖 Lib B 和 Common Src。 Lib A 和 Lib B 包含相同类的不同实现。
我对 Common Src 项目的计划是容纳所有实用程序类,这必然取决于 Lib A 和 Lib B。
有没有办法设置它,我的 gradle 项目应该是什么样子?
我尝试过的事情:
- 我尝试将 Common Src 作为子项目删除,并将其包含在项目 A 和项目 B 的 sourceSets 中。但是,IntelliJ 似乎将 Common Src 标记为项目 A 的源根,即使构建通过- gradle 工作,我无法让 IntelliJ 识别项目 B 在 Common Src 中也有源根。
- 将 Lib A 和 Lib B 添加到 Common Src 的依赖项中,但显然这不起作用。
背景:
我创建了一个兼容 Forge(项目 A)和 Fabric(项目 B)模块加载器的 Minecraft 模块。我在两个项目中都有实用程序类,它们具有相同的源代码,但需要编译两次,每次都具有不同的依赖项。我不想每次要更改实用程序类中的某些内容时都必须编写两次代码。
【问题讨论】:
标签: java gradle intellij-idea minecraft-forge minecraft-fabric