AAR可以包含传递依赖吗?

所以,现在我有一个库项目,说项目Foo依赖于像OkHttp的库。

现在, Foo有一个Maven构build步骤,生成一个AAR并将其推送到公共场所。

所以现在让我说我有项目B,我们将它称为Bar 。 Bar是一个Android应用程序, Bar依赖于Foo

那么,我有。 但是,当我调用从调用OkHttp Bar Foopublic static函数时,我收到以下消息:

 java.lang.NoClassDefFoundError: com.squareup.okhttp.OkUrlFactory at com.foo.sdk.utils.OkHttpStack.<init>(OkHttpStack.java:15) 

那么,这样的事情是可能的吗? 或者将Bar需要手动依赖OkHttp以及任何其他依赖Foo有?

所以,花了一点时间,但我发现我在找什么。 这恰好是我用词的方式。

这个较less见的答案正是我所期待的:

使用gradle的aar库不能解决传递依赖问题

基本上,我需要添加一个

 transitive = true 

到Bar的build.gradle

例如:

 compile ('com.foo:FOO:1.0.0@aar'){ transitive=true } 

这样它包括我所有的传递库。

但是请注意,这实际上可能会导致依赖关系(特别是本地关系)之间的冲突,这些冲突可以使用“排除”标记来解决。