在android studio中运行java程序时出现以下错误。
错误:任务执行失败': app:preDebugAndroidTestBuild '。
与项目':app'中的依赖'com.android.support:support-annotations'冲突。 app(26.1.0)和测试app(27.1.1)的已解决版本有所不同。有关详细信息,请参阅https://d.android.com/r/tools/test-apk-dependency-conflicts.html。
请解决任何问题。 ?
答案 0 :(得分:26)
使用implementation 'com.android.support:appcompat-v7:26.1.0'
而不是$this->messageText = isset($this->input['entry'][0]['messaging'][0]['message']['text']) ? $this->input['entry'][0]['messaging'][0]['message']['text'] : '' ;
并将compileSdkVersion 26更改为27
答案 1 :(得分:19)
感谢@Ganesh Bhat和Chad Bingham
对于那些仍然面临问题的人,上面的回答并没有帮助我在android studio 2.2预览中。
这解决了我的问题。
将此内容添加到您的gradle文件中。
configurations.all {
resolutionStrategy {
force 'com.android.support:support-annotations:23.1.1'
}
}
Android support library error after updating to 23.3.0
Resolved versions for app (22.0.0) and test app (21.0.3) differ
更新 - 如果上一个答案不起作用:
您应该将 compileSdkVersion 和 appcompat 更新到最新更新,直到现在compileSdkVersion为27, appcompat也是27.1.1和28.0.0-alpha1是预发布版本
从而
更改
compileSdkVersion 27
和
实施'com.android.support:appcompat-v7:26.1.0'
到最新更新
实施'com.android.support:appcompat-v7:27.1.1'
您可以通过此链接查看最新更新:
https://developer.android.com/topic/libraries/support-library/revisions
答案 2 :(得分:2)
我在几分钟之前回答了同样的问题Reference。如果您不打算实施测试代码,请从您的应用中删除junit。
还有很多与此相关的问题。
答案 3 :(得分:2)
将此添加到您的应用程序gradle文件
configurations.all {
resolutionStrategy {
force 'com.android.support:support-annotations:26.1.0'
}
}
答案 4 :(得分:1)
在应用相关性大括号
中添加这些行android{
configurations.all {
resolutionStrategy.force 'com.android.support:support-annotations:27.1.1'
}
}
截止到目前为止最新的是27.1.1。
答案 5 :(得分:1)
AS配置版本:
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support.constraint:constraint-layout:1.1.0'
testImplementation 'junit:junit:4.12'
**androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'**
修改:
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:26.0.0-beta1'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
implementation 'com.android.support:design:26.0.0-beta1'
testImplementation 'junit:junit:4.12'
**androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'**
答案 6 :(得分:1)
好吧,我在这里也遇到了同样的问题
您将在其中找到已设置的所有配置。就我而言
android{
**compileSdkVersion 26**
defaultConfig {
applicationId "com.xxxxxxxxxxx.yyyyyyyy.zzz"
minSdkVersion 19
**targetSdkVersion 26**
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
**implementation 'com.android.support:appcompat-v7:26.1.0'**
implementation 'com.android.support.constraint:constraint-layout:1.1.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
因此,这里只需将compileSdkVersion和targetSdkVersion从26更改为27 和
来自依赖项更改支持应用程序
from implementation 'com.android.support:appcompat-v7:26.1.0'
to implementation 'com.android.support:appcompat-v7:27.1.1'
android {
**compileSdkVersion 27**
defaultConfig {
applicationId "com.xxxxxxxxxxx.yyyyyyyy.zzz"
minSdkVersion 19
**targetSdkVersion 27**
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
**implementation 'com.android.support:appcompat-v7:27.1.1'**
implementation 'com.android.support.constraint:constraint-layout:1.1.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
已修正!!!
答案 7 :(得分:0)
大家好我解决这个问题时遇到了同样的问题你需要在你的app bulid gradle中改变你的appcompat
implementation 'com.android.support:appcompat-v7:27.1.1'
那么它应该要求你安装它,如果你已经安装了,如果仍然错误解决了改变你的sdkversions它会帮助很多因为如果你改变appcompact 到27.1.1你需要将你的sdkversion改为27,我建议大家更新你的android工作室和sdk到最新的
答案 8 :(得分:0)
错误:
错误:任务':app:preDebugAndroidTestBuild'的执行失败。
与项目':app'中的依赖项'com.android.support:support-annotations'冲突。应用(26.1.0)和测试应用的已解决版本 (27.1.1)不同。看到 https://d.android.com/r/tools/test-apk-dependency-conflicts.html的 详细信息。
这是由于没有将任何依赖项添加到您的App build.gradle,或者它可能是旧版本。因此,添加注释支持的依赖项。
implementation 'com.android.support:support-annotations:27.1.1'
在这里,我添加了注释版本27.1.1,以解决与其他版本不匹配的错误,然后将其更改为所需的版本。
答案 9 :(得分:0)
如果有帮助,请尝试以下更改
com.android.support:appcompat-v7:26.1.0
到
com.android.support:appcompat-v7:27.1.1
答案 10 :(得分:0)
我发现这很简单。
我们将对所有模块使用更新并使用相同的版本。
build.gradle
,使用全局变量// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
ext.kotlinVersion = '1.2.61'
ext.global_minSdkVersion = 16
ext.global_targetSdkVersion = 28
ext.global_buildToolsVersion = '28.0.1'
ext.global_supportLibVersion = '27.1.1'
}
build.gradle
,并使用全局变量 应用程序级别build.gradle
android {
compileSdkVersion global_targetSdkVersion
buildToolsVersion global_buildToolsVersion
defaultConfig {
minSdkVersion global_minSdkVersion
targetSdkVersion global_targetSdkVersion
}
...
dependencies {
implementation "com.android.support:appcompat-v7:$global_supportLibVersion"
implementation "com.android.support:recyclerview-v7:$global_supportLibVersion"
// and so on...
}
某些库/模块build.gradle
android {
compileSdkVersion global_targetSdkVersion
buildToolsVersion global_buildToolsVersion
defaultConfig {
minSdkVersion global_minSdkVersion
targetSdkVersion global_targetSdkVersion
}
...
dependencies {
implementation "com.android.support:appcompat-v7:$global_supportLibVersion"
implementation "com.android.support:recyclerview-v7:$global_supportLibVersion"
// and so on...
}
解决方案是使您的版本与所有模块中的版本相同。这样您就不会有冲突。
当我更新了所有内容(gradle,sdks, 库等。那么我面临的错误就更少了。因为开发人员正在工作 很难在Android Studio上轻松开发。
始终具有**最新,但版本稳定**不稳定的版本为alpha
,beta
和rc
,在开发时请忽略它们。
我已经在项目中更新了以下所有内容,并感到代码完美无缺。
build.gradle
-classpath 'com.android.tools.build:gradle:3.2.0'
(Track android.build.gradle
release和this)buildToolVersion
(跟踪buildToolVersion release)compileSdkVersion
和targetSdkVersion
Track platform release 祝您编程愉快! :)
答案 11 :(得分:0)
同样重要的是,在您的gradle中查看
targetSdkVersion 27
compileSdkVersion 27
buildToolsVersion '27.0.3'
答案 12 :(得分:0)
答案 13 :(得分:-1)
在应用级别将此代码添加到build.gradle的底部。它会起作用......
configurations.all {
resolutionStrategy.eachDependency{
DependencyResolveDetails details ->
def requested=details.requested
if(requested.group=="com.android.support"){
if(!requested.name.startsWith("multidex")){
details.useVersion("26.0.1")
}
}
}
}