我正在尝试使用胖子在项目中实现Dokka。为了能够生成文档。我需要项目使用的依赖项的类路径。 Dokka接受jars作为类路径,以便能够生成文档。我使用Groovy生成Gradle任务,以便能够提取每个子项目的依赖项
由于该项目使用AAR依赖项,因此我需要这些文件的classes.jar。
我能够在.gradle缓存目录中检索AAR目录,但是正如我所说的那样,它指向AAR。我不想解压缩文件以能够提取其中的classes.jar,因为这将是非常繁重的性能。
def classpaths = []
subprojects.each { project ->
classpaths.addAll(project.android.getBootClasspath().collect { it.path })
project.configurations.each { configuration ->
try {
classpaths.addAll(configuration.files.collect { it.path })
} catch (Exception ignored) {
}
}
}
此代码将检索大多数AAR。但这似乎并没有打印依赖项(例如Glide)
如何为项目使用的所有依赖项获取依赖项或其类.jar路径的转换目录?我需要能够动态获取路径。
我需要的目录示例:/Users/user/.gradle/caches/transforms-1/files-1.1/glide-4.8.0.aar/efaa2fb5a51ab0ecf0ac00dd6a8d019b/jars/classes.jar