【问题标题】:How to use a library project in android studio如何在 android studio 中使用库项目
【发布时间】:2013-12-21 01:42:02
【问题描述】:

我一直在尝试将this library project 添加到我在 Android Studio 中的现有项目中。这是我第一次使用图书馆项目,我遇到了困难。我从周围的教程和帖子中寻找了很多方法来做到这一点,但无法完成。

【问题讨论】:

    标签: android android-gradle-plugin library-project


    【解决方案1】:

    我不确定是否已经可以通过 IDE 添加库项目(-> 没有任何问题)。 我通过像这样配置我的项目的 gradle 文件来做到这一点:

    • 在您的项目根目录中创建一个名为libs 的文件夹
    • 将文件夹datetimepicker-library复制到libs
    • 使用以下命令将此库添加到您的settings.gradle

      include ':libs:datetimepicker-library'
      
    • 转到您的AppProjectbuild.gradle 文件,然后将以下行添加到您的dependencies

      implementation project(':libs:datetimepicker-library')
      
    • 至少你必须同步你的 gradle 文件:Tools -> Android -> Sync Project with Gradle Files

    请试试这个。如果您遇到错误,请发布日志文件。

    【讨论】:

    • 我相信这是正确的答案,但我无法让我的 build.gradle 文件接受“编译项目”行。但是,使用“compile fileTree(dir: 'libs', include: ['datetimepicker-library'])”对我有用。
    • 最后一条评论对我有用。使用原始编译项目... IDE 抱怨未定义的“默认”内容。无论如何:库代码没有出现在AS上,所以我想我应该打开另一个Android Studio窗口来编辑它。
    • 不适用于 Mapbox。错误:(13) 在包“com.example.myapp”中找不到属性“accessToken”的资源标识符
    • 我按照您提到的这些步骤操作并收到错误错误:项目:应用程序声明了从配置“编译”到配置“默认”的依赖关系,该依赖关系未在项目的描述符中声明:libs:recognito。我正在尝试包含 lib - github.com/amaurycrickx/recognito
    【解决方案2】:

    我是这样做的,

    1. File菜单转到project Structure
    2. 从左侧窗格中选择modules
    3. 按“+”
    4. 完成新模块向导步骤 Make sure to make the module package name same as the module you want to add
    5. 再次打开Project structure,如步骤 1 所示
    6. 从模块列表中选择您的项目,然后在右侧选择依赖项
    7. 点击右侧的+图标
    8. 选择模块依赖,然后选择新添加的模块。
    9. 将库项目的文件复制到创建为模块的新目录
    10. 完成

    第 1 步:

    第 2 步:

    !

    第 3 步:

    第 4 步:

    ....

    第 6 步和第 7 步:

    第 8 步:

    【讨论】:

    【解决方案3】:

    其他答案使它看起来比通常更难。只需在应用的 build.gradle 文件的依赖项部分添加一个 compile 行。

    在这种情况下是

    dependencies {
        // ...
        compile 'com.github.flavienlaurent.datetimepicker:library:0.0.2'
    }
    

    Gradle 提示我进行同步,在我这样做之后,库会自动下载到我的项目中。

    【讨论】:

      【解决方案4】:

      上面列出的解决方案的问题是,您最终会在使用该库的应用程序中克隆库项目。这会使更新库变得复杂,因为您需要在进行更改时删除并重新导入模块。

      我找到的解决方案可以从外部文件夹直接使用库项目,它不会克隆原始库文件。

      解决方法很简单……

      settings.gradle 中添加以下行:

      include ':commonwidgets'
      project (':commonwidgets').projectDir = new File(settingsDir, '../SharedWidgets/commonwidgets')
      

      并在 build.gradle dependency 部分添加:

      implementation project(path: ':commonwidgets')
      

      注意:commonwidgets是我的库名,请根据自己的库名和路径替换名称和路径。

      我希望这对某人有所帮助...

      我真的很想从 GitHub 导入库,但我拒绝为私人库支付 9 美元/月的 jetpack。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-09-25
        • 2015-01-31
        • 2016-11-06
        • 2013-05-11
        • 2016-04-23
        • 1970-01-01
        • 2013-05-12
        相关资源
        最近更新 更多