我正在努力弄清楚如何将库项目导入到 Android Studio 中,以使其可用于多个项目。新构建系统的文档意味着您需要将库项目导入到您正在处理的项目的根目录中:
Gradle 项目还可以通过使用多项目设置来依赖于其他 gradle 项目。多项目设置通常通过将所有项目作为给定根项目的子文件夹来工作
(http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Multi-project-setup http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Multi-project-setup)
这是有问题的,因为正如我上面提到的,我希望所有当前和未来的项目都可以访问常用的库。例如,我目前正在尝试将 Volley 集成到一个新项目中来对其进行评估,并假设我将来希望在多个其他项目中使用它。我将其克隆到我的“${PROJECT_ROOT}/”文件夹,该文件夹与我创建测试项目的级别相同,给我:
${PROJECT_ROOT}/TestProject/测试
${PROJECT_ROOT}/齐射
在尝试以各种方式设置项目的 build.gradle 文件后,我成功编译应用程序的唯一方法是将 Volley 移至 TestProject“主”项目中,这给了我:
${PROJECT_ROOT}/TestProject/测试
${PROJECT_ROOT}/TestProject/volley
这不仅阻止我在不属于 TestProject 的其他项目中使用 Volley,而无需再次复制或克隆它,而且这意味着 git 希望我将其添加到我在根目录下建立的存储库中。测试项目。
如何在 Android Studio 项目中引用库项目而不将它们包含在项目本身中?
你不能将 git 与子模块一起使用吗?例如在您的 .gitmodules 文件中,您可以添加以下内容:
[submodule "volley"]
path = volley
url = https://path/to/volley/repository
您可以将 url 设置为 Volley 的官方存储库,或者您自己的 volley 内部版本。其他项目可以以相同的方式设置并指向相同的 volley 存储库。
我想这样其他用户就可以调用git clone
所有依赖项目都将在主项目文件夹中下载,而不必担心单独下载库项目。
但对于 Volley,我只需将其编译成 JAR 文件并将其粘贴到主项目的 /libs 文件夹中。也就是说,如果您不需要修改其来源。
[更新]
对于不需要修改源码的库项目,可以尝试使用Android Studio将其编译成AAR文件进行共享。 AAR 文件就像 Android 中的 JAR 文件,因此您可以将它们添加到 /lib 源文件夹,或将它们发布到本地/内网 maven 存储库。如果您选择maven路线,请在build.gradle中添加您的本地/内网存储库,并引用您已发布的库项目。
希望将来更多的库项目所有者将他们的项目构建成 AAR 文件并将它们发布到 Maven 中央存储库,这样我们就可以直接从 build.gradle 文件引用它们。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)