首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何为非maven项目创建apklib?

如何为非maven项目创建apklib?
EN

Stack Overflow用户
提问于 2012-12-14 18:42:37
回答 1查看 2.7K关注 0票数 6

我的android应用程序依赖于一个来自第三方的android库项目。我将我的构建环境切换到maven,接下来的示例进行得相当顺利,但最后一步是这样。我不明白到底需要做什么,。我读过apklib页面这里。我从来没有见过一个文档围绕着你实际做的比这个文档更好的东西跳舞。它包含了关于如何引用apklib的1段代码,但根本没有关于如何实际生成apklib的任何信息。

而且,我的项目结构如下所示

代码语言:javascript
复制
/projectroot/app   (main application android project source code)
/projectroot/shared/lib1  
/projectroot/shared/lib2 (3rd party lib i don't want to create pom.xml for)

我有一个带有如下模块部分的projectroot/头文件:

代码语言:javascript
复制
<modules>
    <module>shared/lib1</module>
    <module>shared/lib2</module>
    <module>app</module>
</modules>

是这样吗?在我看到的所有模块示例中,它们引用的是直接子文件夹,而我的示例则嵌套得更多。

我要寻找的主要内容是如何使lib2成为apklib,以便从app/pu.xml中引用。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-15 00:29:11

我们提到了在您引用的链接中

兼容非Maven Android库项目! 生成的.apklib文件将具有一个标准的Android/Eclipse项目的布局。这意味着无论您的Maven布局如何,.apklib文件中的布局将是"src/“而不是"src/main/java/",但在Android/Maven应用程序项目中使用时仍然正确解释。这与非Maven开发人员的库项目是兼容的,这对于发展Android开发人员社区非常重要。 使用其他非Maven开发人员库 这也意味着我们可以获取任何外部Android库项目压缩文件(来自非Maven开发人员),并执行mvn安装:安装文件.然后简单地开始使用它作为依赖项。 与非Maven开发人员共享您的.apklib 要与非Maven开发人员共享您的.apklib文件,如果您将它重命名为.zip,他们可能会感到更舒服。然后,他们可以简单地将其解压缩到一个目录中,然后从目录中使用它。

如果它是一个mavenized项目,只需运行mvn clean install来创建apklib并将其安装到本地Maven存储库中。

如果这是一个常规的Android库项目,只需压缩项目文件夹(最好去掉所有不必要的IDE生成的文件),将-lib.zip重命名为my-lib.apklib,然后运行mvn install:install-file将my-lib.apklib安装到本地Maven存储库中。

请注意,在您的多模块maven项目中,如果子模块lib2未被maven化,则在运行Maven构建时可能会出现一些配置错误,它被称为多模块Maven项目,因此包含一个非Maven化的子项目没有多大意义。如果lib2还没有被maven化,那么要么将它作为mutli模块maven项目的一部分,要么从mutli模块maven项目中删除它,并单独维护它(通过apklib和通过源代码进行IDE开发)。

还请注意,Maven和Eclipse中的项目构建完全不同,如果要将项目创建/导入到IDE中,那么无论如何都需要库项目源代码。如果lib2是多模块项目的一部分,那么它将在导入父项目时自动导入和设置,否则,您可能需要手动导入和安装独立项目。有关更多细节,请查看这个答案这个答案

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13884512

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档