繁体   English   中英

如何导出 AAR 库及其文档?

[英]How to export AAR library with its documentation?

我想知道为什么我的库在构建为 AAR 格式后总是丢失其文档。 另外,Android Studio 对代码进行了压缩,即构建前的代码和构建成AAR 格式后的代码总是不同的,没有原始的。 我希望我的库有自己的文档和原始代码。 您可以在下面看到不同之处:

建成前

前

内置成AAR格式后

后

文档在哪里?! 此外,您会注意到整个代码确实缩小了并且有所不同。

那么,如何在不压缩代码的情况下导出 AAR 库及其文档?

我同意@MarkusKauppinen。

构建源jar之后的主要问题是你不能使用这个jar作为你的依赖项。 这只是一个不能用于编写代码的源代码,即你不能导入任何东西,因为jar包含*.java文件而不是*.class文件。 这样做,请执行以下操作:

步骤#1为您的库构建AAR格式。 通常,它位于[project]/[library-module]/build/outputs/aar/library-release.aar

步骤#2将AAR文件添加为模块。 转到文件>新建>新模块...>导入.JAR / .AAR包>下一步。

在此输入图像描述

然后,找到AAR文件并单击“完成”。

在此输入图像描述

步骤#3单击此图标转到项目结构 图标项目结构 ,并将我们刚刚制作的模块添加到应用程序的依赖项中。

在此输入图像描述

步骤#4将@ MarkusKauppinen的gradle任务添加到库模块的build.gradle并使用gradle同步项目。

步骤#5转到Android Studio右侧窗格>单击此图标,单击Gradle>刷新gradle任务 图标刷新gradle任务

步骤#6查找并运行(通过双击) sourcesJar :library-module > Tasks > other

sourcesJar任务

步骤#7任务完成后,您将找到源jar

library-module\\build\\libs\\..-sources.jar

步骤#8将至少一个类导入应用程序的模块,例如在MainActivity 然后,按Ctrl +单击该类。 单击Choose sources并浏览步骤#7中提到的源jar。

浏览源jar

最后,您可以查看源代码及其文档。

代码“缩小”,因为一旦您创建AAR ,原始源代码就不会包含在AAR中 它只是Java字节码。

然后在应用程序中使用AAR库时。 源代码是从字节码反向设计的 原始变量名称不可用,并且由于字节码编译器的优化和诸如此类的原因,可能存在一些编码样式差异。 当然,这些注释不包含在字节代码中,因为它适用于计算机,注释适用于人员。

因此,当使用AAR库时,如果您在调试等时不想看到原始源代码,则需要将AAR作为单独的源JAR提供,并且可能告诉Android Studio如果不这样做则使用源JAR它自动。

我已经能够自动创建源JAR,作为将生成的AAR / JAR“上传”到本地Maven存储库的过程的一部分。 我不知道你有什么样的构建系统,所以我不会深入研究这些细节。

无论如何,你可以将它添加到你的模块的build.gradle:

task sourcesJar(type: Jar) {
    classifier = 'sources'
    from android.sourceSets.main.java.srcDirs
}

然后,只要您想要创建/更新源JAR,就需要单独运行它:

Gradle - >任务 - >其他 - > sourcesJar

并且可能有一些方法可以将任务自动化为assembleRelease任务的一部分,但我对Gradle还不是很熟悉。

源JAR将出现在... \\ MyLibrary \\ app \\ build \\ libs \\ path中。

在kotlin中,您可以使用名为Dokka的开源库。 它的使用非常简单,并以html格式生成文档,就像使用javaDoc一样。 基本上,库在您的gradle方法列表中添加了一个名为“ dokka ”的方法。 通过启动命令生成文档:)。

您可以在下面看到一个示例:

在此输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM