gpt4 book ai didi

Android Studio 将外部项目添加到 build.gradle

转载 作者:IT老高 更新时间:2023-10-28 12:58:09 33 4
gpt4 key购买 nike

我有一个示例项目,设置如下:

/root
+ Pure Java Lib
+ Android Test Lib
+ Android Test Project

Test Project”依赖于“Test Lib”,最后一个依赖于“Pure Java Lib编译项目并启动此设置工作正常。

我现在正在考虑导入我以前的 Eclipse 工作区并使用 Android Studio,问题是项目设置不同,我想保持这种方式。

例如如果使用前面的例子:

/root
+ Android Test Lib
+ Android Test Project

/Some Other folder (another repository for example)
+ Pure Java Lib

我尝试了许多配置,但没有找到引用父文件夹范围之外的项目的方法(示例中为“root”)。

在许多平台/模块中,您可以使用“..”在文件夹中向上移动,但这对我不起作用,也许我用错了。

有谁知道如何使用 Gradle 实现这一点?

更新

我会尝试更通用:

/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

我想在项目A中使用项目B的模块1。


更新:09-03-19

我现在看到了,我必须更新......在将近 6 年后,今天我更聪明了,我可以肯定地说问题是我误解了“真相之源”的概念。

虽然有一个库的引用是一个很好的概念......并且可能看起来像一个“真相来源”,但真正的“真相来源”将是每个项目正在使用的代码版本库,因为库本身有版本.. 许多版本的“真相来源”是相对于使用该库的项目。

正确的方法是使用大多数开发人员不喜欢的东西,那就是 git 子模块,是的,在每个项目中重复源代码导致每个项目使用不同版本的代码的可能性很大。

但是,您需要让所有项目都使用所有库的最新和最好的版本。这本身就是一个挑战

这是使用库源开发项目的正确方法的原因在于,它可以扩展……您可以拥有数百个项目,每个项目都有自己的库配置。

最佳答案

假设 Some Other Folder 是一个 gradle 项目,您可以在 settings.gradle 文件中添加如下内容:

include ':module1'
project(':module1').projectDir = new File(settingsDir, '../Project B/Module 1')

关于Android Studio 将外部项目添加到 build.gradle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17479076/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com