【问题标题】:Android Studio: Adding a library outside of the project rootAndroid Studio:在项目根目录之外添加库
【发布时间】:2015-05-28 21:26:45
【问题描述】:

我有两个项目,A 和 B,并希望通过库项目 C 在它们之间共享一些代码。这样做的正确方法是:

  1. A 和 B 和 C 都在不同的项目中。 (根本不在同一个目录)
  2. 对 C 的更改会自动在 A 或 B 中使用,而无需重新导入 C。

我对 Android Studio 还很陌生,在这里我遇到了各种各样的问题。我真的只想使用位于项目根目录之外的源代码。谢谢!

【问题讨论】:

    标签: java android android-studio libraries


    【解决方案1】:

    这听起来像是here 提出(并已回答)的问题。

    总结 Scott Barta 的回答:

    settings.gradle:

    include ':module-custom-lib'
    project(':module-custom-lib').projectDir = new File(settingsDir, '../../../libraryProject/workspace/projectSrc')
    

    A 和 B 的 build.gradle:

    dependencies {
        compile project(':module-custom-lib')
    }
    

    所以,假设文件结构如下:

    +-- AndroidStudioProjects
    |   +-- CoreLibs
    |       +-- app (empty)
    |       +-- myJavaCoreLib
    |       +-- anotherJavaCoreLib
    |   +-- AndroidApp1
    |       +-- app
    |   +-- AndroidApp2
    |       +-- app
    |   +-- AndroidApp3
    |       +-- app
    

    ...代码是:

    settings.gradle:

    include ':coreLib'
    project(':coreLib').projectDir = new File(settingsDir, '../CoreLibs/myJavaCoreLib')
    

    build.gradle 在 AndroidApp[1、2 和 3] (你的 A 和 B)

    compile project(':coreLib')
    

    【讨论】:

    • 谢谢!这(加上一个不相关的错误修复)解决了我的问题。
    • 至少!非常感谢!我的头快要爆炸了!
    • 有效,但项目根目录之外的子项目已弃用,并计划在 Gradle 8.0 中删除。有解决办法吗?
    猜你喜欢
    • 1970-01-01
    • 2023-01-20
    • 2013-07-04
    • 2017-01-17
    • 2013-06-03
    • 2013-05-25
    • 2015-01-13
    • 1970-01-01
    • 2016-10-31
    相关资源
    最近更新 更多