我的相关性
dependencies {
compile 'me.dm7.barcodescanner:zxing:1.9'
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support:design:26.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
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'
compile 'com.theartofdev.edmodo:android-image-cropper:2.7.+'
}
在编译找到的appcompat
示例时,我在27.1.1,26.1.0
行中收到错误。vectordrawable 27.1.1
nd supportdesign 26.1.0
我的目标SDK是26。
我尝试将版本切换为27但我的SDK目标是26,我收到错误。
答案 0 :(得分:4)
每当您看到此类问题时,请使用相同版本的其他支持库明确声明gradle文件中的probelmatic库:
implementation "com.android.support:animated-vector-drawable:26.1.0"
implementation "com.android.support:design:26.1.0"
implementation 'com.android.support:support-vector-drawable:26.1.0'
这是因为您的某些依赖项使用了不同的版本。
另外,使用实现不编译。编译已被弃用:
implementation 'me.dm7.barcodescanner:zxing:1.9'
implementation 'com.theartofdev.edmodo:android-image-cropper:2.7.0'
答案 1 :(得分:0)
项目中存在冲突的依赖项。您需要在Linux终端中运行以下命令来检查项目的依赖关系树:
./gradlew app:dependencies
或者如果您使用的是Windows:
gradlew app:dependencies
在根项目中。 app是你的模块名称。
快速检查依赖项块,您将找到以下库:
compile 'com.theartofdev.edmodo:android-image-cropper:2.7.+'
正在使用支持库版本27.1.1作为其依赖项(您可以检查its build.gradle)。
您可以使用以下方法从图像裁剪器中排除库
implementation ('com.theartofdev.edmodo:android-image-cropper:2.7.0') {
exclude group: 'com.android.support'
exclude module: 'appcompat-v7'
}
使用旧版支持库的副作用是您不能确定程序是否正常工作。这是因为库的所有者可能没有使用旧版本的支持库测试库。
更好的方法是将您的BuildToolsVersion
,compileSdkVersion
,targetSdkVersion
和support libraries
更改为 27 版本。如下所示:
android {
compileSdkVersion 27
buildToolsVersion '27.0.3'
defaultConfig {
applicationId "com.package.name"
minSdkVersion 15
targetSdkVersion 27
...
}
...
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support:design:27.1.1'
// your other dependencies
...
}