android - 混淆后如何保持javadoc可见

标签 android proguard javadoc

我为我的项目构建了一个很好的 Javadoc 文档,这是一个供开发人员使用的 JAR 文件

但是在我为了混淆我的代码而运行 proguard 之后,所有的 Javadoc 文档都消失了。

我想在 jar 中保留所有公共(public)方法的 javadoc。 有谁知道如何在混淆后保持 Javadoc 可见?

谢谢!

最佳答案

Javadoc 是从源文件 中提取的。不可能从类文件创建 javadoc,既不干净也不混淆。 ProGuard 对通过编译您的源文件 创建的类文件 进行操作,并从中生成混淆的类文件。这与 javadoc 的创建完全无关。

Javadoc 处理器的输出通常进入一个目录结构。当然,您可以压缩它并为其提供 .jar 扩展名以提供 javadoc。我经常看到(例如,在 Apache Commons 上)将您的库 JAR 命名为 foo-bar-1.2.3.jar 和压缩的 javadoc foo-bar-1.2.3- javadoc.jar.

提供与二进制文件分开的 javadoc 是个好主意,因为二进制文件需要包含在依赖它的程序分发中,而 javadoc 只对开发人员感兴趣并且只会增加文件的大小如果它在同一个 JAR 中,则不需要任何程序。

在 IDE 中,您需要将 javadoc JAR 分配给库 JAR。在 Eclipse 中,这可以通过PropertiesJava Build Path 对话框完成。添加 JAR 文件后,展开您创建的条目旁边的白色箭头,选择 Javadoc 位置,然后选择编辑...。 Eclipse 可以直接从存档中读取Javadoc,您不需要解压缩它。

关于android - 混淆后如何保持javadoc可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26215616/

相关文章:

java - 如何在android中的 Activity 之间传递 boolean 值?

maven - 如何为 JavaFX 应用程序创建可执行的混淆 jar?

java - 无法运行 Oracle 提供的 Doclet 类

java - swt 库 - 链接到 eclipse javadoc

Android 深层链接到服务?

android - 清除 Activity 堆栈并从 Android 服务启动新 Activity

android - 如何将 dtmf 音从我的应用程序发送到拨出电话?

Java混淆

android - 尝试启动一个新项目,但找不到 proguard.cfg

android - Dokka - 跳过为默认的 android 包生成 javadoc