我的 build.gradle 中有以下依赖项:
dependencies {
compile 'com.google.guava:guava:18.0'
}
它在编译期间工作,并为我的源代码生成输出 jar(它使用来自 guava 库的 com.google.common.collect.Maps 等类)。
我有一个将输出 jar 转换为 dex 文件的 dex 任务:
task dex(dependsOn: jar, type:Exec) {
project.dexDir.mkdirs()
commandLine 'dx', '--dex', '--no-strict', '--output=' + buildDir +'/dex/' + project.name + '.jar', jar.archivePath
}
问题是输出 jar 没有 guava 依赖项,所以当它转换为 dex,推送到 android 设备并在那里运行时,我得到 java.lang.ClassNotFoundException: 找不到类 com.google.common .collect.Maps
有没有办法让从我的其他源代码生成输出 jar 的 javaCompile 任务的输出 jar 中包含番石榴依赖项?非常感谢您!