1

我目前在基于 Gradle 的 Android 项目中遇到问题。我的项目有两个依赖项:

compile project(':Library:lib1')
compile files('libs/libGoogleAnalyticsServices.jar')

libGoogleAnalyticsServices是用于谷歌分析的 v3 版本。

问题是 lib1 是一个旧库,取决于谷歌分析的 v2 版本:

compile files('libs/libGoogleAnalyticsV2.jar')

最后,两个 jar 之间存在冲突(即使 v2 应该只对 可见lib1)并且 v2 正在接管 v3。在我的主模块中,我缺少参考资料。

所以有两个问题:

  • 为什么从主模块甚至可以看到 v2?
  • 为什么 v2 会取代 v3?

理想情况下,我想让 v2 ​​仅在lib1我的模块中可见,而 v3 仅在我的主模块中可见。

任何想法?

4

1 回答 1

0

我对 Android 了解不多,但我认为情况与标准 Java 应用程序相同:每个应用程序只能使用特定库的一个版本,并且必须确保随您的应用程序附带的所有代码应用程序与该版本兼容。

于 2013-09-18T16:46:23.367 回答