如何通过 Gradle/Android Studio 中的外部库项目中的代码修改来更新导入的模块

2024-03-07

我正在开发一个 Android 应用程序,最近从 Eclipse 迁移到 Android Studio 和 Gradle。

在我的计划中,我创建了 5 个 UI 库,并将它们作为模块添加到我的项目中,我创建的库被推送到我的 github 帐户(公开)。

在 Eclipse 中,当您为标记为 lib 的项目添加外部依赖项时,当您更新外部项目的代码然后清理构建时,您的项目会获得这些更新,但在 Gradle 中,我注意到它会创建物理副本,完全独立于其源,我的问题是如何仅更改外部库并更新我的项目。

这是我的 gradle 配置的片段:

dependencies {
    // Libraries
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.google.android.gms:play-services:5.0.89'
    .
    .
    . 
    compile 'com.squareup.picasso:picasso:2.4.0'

    // Projects
    compile project(':com.shehabic.helpicon')
    .
    .
}

如何实际使用外部库

我读过不建议这样做,但它对于调试来说很实用:

  1. 文件 > 项目结构... > 加号以添加模块

  2. “创建新模块”对话框:

    • 选择“导入.JAR/.AAR包”
    • 查找并选择您的包,但在继续之前复制路径
    • 为您的包裹命名
  3. 返回“项目结构”对话框:

    • 出现消息“Gradle 项目同步正在进行中..”,但需要单击“确定”才能真正开始构建。相反,您可以继续依赖关系。
    • 选择“app”模块,转到“依赖项”选项卡,然后加号添加“模块依赖项”
    • 选择您的模块
    • 单击“确定”以运行构建。

这确实会在您的 android 项目中创建一个包的副本,但它也会生成所有必要的信息和文件,并且您始终可以删除该副本或保留它。

您的模块已添加到 settings.gradle 文件中:

':app', ':module_name'

您的模块的 build.gradle 文件已创建:

configurations.maybeCreate("default")
artifacts.add("default", file('package.jar'))

并且依赖项已添加到您的 ':app' 的 build.gradle 中:

compile project(':module_name')
  1. 现在,访问添加的模块的 build.gradle 文件并粘贴您复制的路径:

configurations.maybeCreate("default") artifacts.add("default", file('X:\Java\Applications\YourApplication\dist\package.jar'))

无论您在何处编辑包,只需“清理并构建”它即可。 每当您希望您的应用程序从 Android 项目外部反映包中的“更新”时,只需同步即可。 完成调试后,您可以删除模块、依赖项和旧副本,并将包的最后一个版本添加为副本。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何通过 Gradle/Android Studio 中的外部库项目中的代码修改来更新导入的模块 的相关文章

随机推荐