为什么 Android Studio 和 gradle 可以使用不同的类路径进行单元测试?

Ben*_*uhn 8 java android classpath gradle android-studio

我有一套单元测试,当通过./gradlew :project:testDebugUnitTests. 但是,当我在 Android Studio 中运行它们时,我遇到了一个模糊的问题,我最终使用与此 Gradle 命令不同的类路径追踪到了似乎是 Android Studio 的问题。

有问题的依赖项是 Byte Buddy,我遇到了此错误的一个变体,变体已在 1.9.0 中修复。运行./gradlew dependencies表明,1.9.10将在我的构建中使用,但是当我看到在命令行是Android Studio中使用运行我的测试中,该-classpath参数包含两个1.8.101.9.10和1.8.10版本列表中的第一个。

我真的对可能导致这种情况的原因感到困惑,因为我原以为 Android Studio 会从其 Gradle 集成中获取类路径。我喜欢任何关于为什么会发生这种情况或如何进一步调试的线索。