我有一个示例项目,具有以下设置:
/root
+ Pure Java Lib
+ Android Test Lib
+ Android Test Project
'测试项目' is dependent on the '测试库', and the last depends on the '纯Java Lib' Compiling the project and launching this setup works just fine.
我现在正考虑导入我以前的Eclipse工作区并使用Android studio,问题是项目设置不同,我想保持这种方式 .
例如,如果要使用前面的示例:
/root
+ Android Test Lib
+ Android Test Project
/Some Other folder (another repository for example)
+ Pure Java Lib
我找到了一种方法来引用父文件夹范围之外的项目(示例中的“root”) .
在许多平台/模块中,你可以使用'..'在文件夹中向上移动,但这对我不起作用,也许我用错了 .
有谁知道Gradle如何实现这一目标?
UPDATE
我会尝试更通用:
/C:/
/Project A
+ Module 1 - Pure Java
+ Module 2 - Android Test Lib
+ Module 3 - Android Test Project
/Project B
+ Module 1 - Pure Java
+ Module 2 - Pure Java
+ Module 3 - Pure Java
我想使用 project B , in project A 的模块1 .
UPDATE: 09-03-19
我现在看到了这一点,我必须更新...近6年后,今天我更聪明,我可以肯定地说,问题是我误解了“真理之源”的概念 .
虽然有一个参考库是一个很好的概念......并且可能看起来像一个“真相的来源”,真正的“真相来源”将是每个项目使用该库的代码的版本,原因图书馆本身有版本..许多版本的“真相来源”是相对于使用该库的项目 .
正确的方法是使用大多数开发人员不喜欢的东西,那就是git子模块,并且复制每个项目中的源是因为每个项目使用不同版本的代码的机会最多 .
但是,您需要瞄准所有项目,以使用所有库的最新版本..这本身就是一个挑战
这是使用库源开发项目的正确方法的原因是这可以扩展...您可以拥有数百个项目,每个项目都有自己的库配置 .