创建 API 像 Android 那样使用存根方法的 jar?
Create API jar like Android does with stubbed methods?
我正在寻找分发自定义 API 并且知道 类 将在 运行 时间可用。我希望我的 public 和受保护的方法 / 类 包含在我可以分发的 jar 中,但我不想要任何其他源代码,如果该 jars 代码是实际执行
当您尝试直接执行 jar 时,Android 框架 jar 具有的确切行为。
我的问题是如何从源代码创建相同的 jar,而无需手动检查和创建每个存根方法。我希望随着我的 API 的增长而扩展。
一种可能性是编写一个 Java 编译器,该编译器输出带有空方法主体的源代码副本,或者输出一个抛出异常的单个语句的主体工作。然后你可以使用普通的开发工具来编译生成的 类.
我相信您可以为此目的使用 mkstubs
工具:https://github.com/android/platform_development/tree/master/tools/mkstubs
正如@CommonsWare 提到的,AOSP 中的存根是由 javadoc DroidDoc 脚本生成的,请阅读此处:How are .java files in android_stubs_current_intermediates directory generated?
我正在寻找分发自定义 API 并且知道 类 将在 运行 时间可用。我希望我的 public 和受保护的方法 / 类 包含在我可以分发的 jar 中,但我不想要任何其他源代码,如果该 jars 代码是实际执行
当您尝试直接执行 jar 时,Android 框架 jar 具有的确切行为。
我的问题是如何从源代码创建相同的 jar,而无需手动检查和创建每个存根方法。我希望随着我的 API 的增长而扩展。
一种可能性是编写一个 Java 编译器,该编译器输出带有空方法主体的源代码副本,或者输出一个抛出异常的单个语句的主体工作。然后你可以使用普通的开发工具来编译生成的 类.
我相信您可以为此目的使用 mkstubs
工具:https://github.com/android/platform_development/tree/master/tools/mkstubs
正如@CommonsWare 提到的,AOSP 中的存根是由 javadoc DroidDoc 脚本生成的,请阅读此处:How are .java files in android_stubs_current_intermediates directory generated?