使用Gradle下载依赖项时,它似乎排除了可选的依赖项.例如,我加入了番石榴:
compile 'com.google.guava:guava:19.0'
它没有下载此处列出的可选依赖项:https://mvnrepository.com/artifact/com.google.guava/guava/19.0
我一直在学习Gradle并移植遗留应用程序以使用Gradle.该应用程序有一个Python脚本包装器,总是下载可选的依赖项,我在这里碰壁了.
最佳答案 根据Maven的
Optional Dependencies的描述:
If a user wants to use functionality related to an optional dependency, they will have to redeclare that optional dependency in their own project.
Gradle与Maven具有相同的行为,如果你想使用一些传递的可选依赖项 – 你必须手动声明它们.
您可以尝试找到一些解决方法,但无论如何,默认情况下包含所有可选依赖项似乎有点奇怪,甚至不检查,是否真的需要它们.当然,您可以尝试移植逻辑以使用Gradle运行现有的Python脚本,以将所有可选的依赖项收集到本地目录中,并将其声明为file dependencies.