例如,我们有一些AAR格式的Android库,其中已应用所有必需的混淆。当我们将此库作为依赖项包含在某些项目中时,该库的API文档将不可用。我们可以通过这种方式生成源jar,例如:
task sourcesJar(type: Jar) {
classifier = 'sources'
from android.sourceSets.main.java.srcDirs
}
但是在这种情况下,所有资源都是公开的,并可供图书馆的用户进行审查。
问题:是否有任何方法可以在Gradle中生成某种仅标头的源jar文件,该文件将仅包含具有所有必需文档的方法和字段签名,但具有空的实现?
这可能是一种解决方案: How to generate source.jar of the public API of a closed source AAR? 但是,我认为最好的方法不仅是隐藏内部类,而且是删除所有实现(甚至在公共类中)。