应用程序在我构建时运行,并且运行正常。但我想解决这个问题,因为它可能在将来引起问题。图片显示我悬停在它上面时的错误。有关如何解决此问题的任何建议?
我很困惑为什么它发现了两个版本24.2.1和24.0.0,为什么会这样?哪个版本是正确的?
谢谢
更新
我在终端上运行gradlew app:dependencies
找到了这个,
如果你看一下botton并发现这个com.android.support:appcompat-v7:24.0.0
(在底部):
+--- com.google.android.gms:play-services:10.2.1
| +--- com.google.android.gms:play-services-ads:10.2.1
| | +--- com.google.android.gms:play-services-ads-lite:10.2.1
| | | \--- com.google.android.gms:play-services-basement:10.2.1
| | | \--- com.android.support:support-v4:24.0.0 -> 24.2.1 (*)
| | +--- com.google.android.gms:play-services-base:10.2.1
| | | +--- com.google.android.gms:play-services-basement:10.2.1 (*)
| | | \--- com.google.android.gms:play-services-tasks:10.2.1
| | | \--- com.google.android.gms:play-services-basement:10.2.1 (*)
| | +--- com.google.android.gms:play-services-clearcut:10.2.1
| | | +--- com.google.android.gms:play-services-base:10.2.1 (*)
| | | \--- com.google.android.gms:play-services-basement:10.2.1 (*)
| | +--- com.google.android.gms:play-services-basement:10.2.1 (*)
| | \--- com.google.android.gms:play-services-gass:10.2.1
| | \--- com.google.android.gms:play-services-basement:10.2.1 (*)
| +--- com.google.android.gms:play-services-ads-lite:10.2.1 (*)
| +--- com.google.android.gms:play-services-analytics:10.2.1
| | +--- com.google.android.gms:play-services-analytics-impl:10.2.1
| | | +--- com.google.android.gms:play-services-base:10.2.1 (*)
| | | \--- com.google.android.gms:play-services-basement:10.2.1 (*)
| | +--- com.google.android.gms:play-services-base:10.2.1 (*)
| | +--- com.google.android.gms:play-services-basement:10.2.1 (*)
| | \--- com.google.android.gms:play-services-tagmanager-v4-impl:10.2.1
| | +--- com.google.android.gms:play-services-analytics-impl:10.2.1 (*)
| | +--- com.google.android.gms:play-services-base:10.2.1 (*)
| | \--- com.google.android.gms:play-services-basement:10.2.1 (*)
| +--- com.google.android.gms:play-services-analytics-impl:10.2.1 (*)
| +--- com.google.android.gms:play-services-appinvite:10.2.1
| | +--- com.google.android.gms:play-services-base:10.2.1 (*)
| | +--- com.google.android.gms:play-services-basement:10.2.1 (*)
| | \--- com.google.android.gms:play-services-tasks:10.2.1 (*)
| +--- com.google.android.gms:play-services-auth:10.2.1
| | +--- com.google.android.gms:play-services-auth-base:10.2.1
| | | +--- com.google.android.gms:play-services-base:10.2.1 (*)
| | | \--- com.google.android.gms:play-services-basement:10.2.1 (*)
| | +--- com.google.android.gms:play-services-base:10.2.1 (*)
| | +--- com.google.android.gms:play-services-basement:10.2.1 (*)
| | \--- com.google.android.gms:play-services-tasks:10.2.1 (*)
| +--- com.google.android.gms:play-services-auth-base:10.2.1 (*)
| +--- com.google.android.gms:play-services-base:10.2.1 (*)
| +--- com.google.android.gms:play-services-cast-framework:10.2.1
| | +--- com.google.android.gms:play-services-base:10.2.1 (*)
| | +--- com.google.android.gms:play-services-cast:10.2.1
| | | +--- com.google.android.gms:play-services-base:10.2.1 (*)
| | | +--- com.google.android.gms:play-services-basement:10.2.1 (*)
| | | \--- **com.android.support:mediarouter-v7:24.0.0**
| | | +--- com.android.support:palette-v7:24.0.0
| | | | \--- com.android.support:support-v4:24.0.0 -> 24.2.1 (*)
| | | \--- **com.android.support:appcompat-v7:24.0.0** -> 24.2.1 (*)
如果我按照它的根并找到com.android.support:mediarouter-v7:24.0.0
,那么我将它添加到依赖项并将其更改为compile com.android.support:mediarouter-v7:24.2.1
,现在错误消失了。这是正确的做法吗?顺便说一下,我运行我的应用程序并且没有错误(此应用程序仍然运行之前,尽管gradle中有错误)。
由于
答案 0 :(得分:1)
我很困惑为什么它找到了两个版本24.2.1和24.0.0,
您必须使用gradlew app:dependencies
。
通过这种方式,您将找到哪些库具有24.2.1和24.0.0
的依赖关系答案 1 :(得分:0)
您使用的其中一个库取决于特定的AppCompat版本,但您在自己的应用程序中引用了不同的版本。
找出正在执行此操作的库,然后排除导致构建错误的AppCompat引用。
e.g。
compile("com.your.libary:1.0.0") {
exclude group: 'com.android.support', module: 'support-annotations'
exclude group: 'com.android.support', module: 'support-v4'
exclude group: 'com.android.support', module: 'appcompat-v7'
exclude group: 'com.android.support', module: 'preference-v7'
}