Setelah menerima update proyek untuk versi baru dari gradle saya mendapatkan error ini:
Error:Execution failed for task ':app:processDebugManifest'.
Manifest merger failed : Attribute meta-data#android.support.VERSION@value value=(26.0.0-alpha1) from [com.android.support:cardview-v7:26.0.0-alpha1] AndroidManifest.xml:24:9-38
is also present at [com.android.support:design:25.3.1] AndroidManifest.xml:27:9-31 value=(25.3.1).
Suggestion: add 'tools:replace="android:value"' to <meta-data> element at AndroidManifest.xml:22:5-24:41 to override.
Bagaimana saya bisa memecahkan masalah ini?
Ini adalah aplikasi saya's membangun.gradle
file:
android {
compileSdkVersion 25
buildToolsVersion "25.0.2"
defaultConfig {
applicationId "com.sample.bookReader"
minSdkVersion 16
targetSdkVersion 25
versionCode 1
versionName "1.0"
}
...
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:multidex:+'
compile 'com.android.support:appcompat-v7:26.0.0-alpha1'
compile 'com.android.support:cardview-v7:26.0.0-alpha1'
compile 'com.android.support:design:25+'
compile 'com.jakewharton:butterknife:8.2.1'
apt 'com.jakewharton:butterknife-compiler:8.2.1'
...
}
Dan ini adalah proyek's membangun.gradle
:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.1'
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
}
}
allprojects {
repositories {
jcenter()
maven { url "https://www.jitpack.io" }
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Bagaimana cara memperbaiki kesalahan ini sambil mempertahankan perubahan yang dilakukan dengan memperbarui gradle versi?
Menempatkan ini pada akhir aplikasi modul membangun.gradle:
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
def requested = details.requested
if (requested.group == 'com.android.support') {
if (!requested.name.startsWith("multidex")) {
details.useVersion '25.3.0'
}
}
}
}
Kredit untuk Eugen Pechanec
Anda menggunakan beberapa versi dari Android Support Library:
compile 'com.android.support:appcompat-v7:26.0.0-alpha1'
compile 'com.android.support:cardview-v7:26.0.0-alpha1'
compile 'com.android.support:design:25+'
Dua 26.0.0-alpha1
, dan salah satunya adalah dengan menggunakan 25+
.
Pilih salah satu beton versi dan menggunakannya untuk semua tiga ini. Karena anda compileSdkVersion
bukan O
, gunakan 25.3.1
untuk semua tiga dari perpustakaan ini, yang mengakibatkan:
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support:cardview-v7:25.3.1'
compile 'com.android.support:design:25.3.1'
Saya mengubah semua dukungan perpustakaan versi untuk 25.3.1 dan bekerja seperti pesona:
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support:design:25.3.1'
Anda juga perlu mengubah compileSdkVersion dan targetSdkVersion 25:
compileSdkVersion 25
targetSdkVersion 25
Anda dapat mengetahui apa perpustakaan tergantung pada versi yang salah dari dukungan perpustakaan dan mengecualikan seperti ini:
compile ('com.stripe:stripe-android:5.1.1') {
exclude group: 'com.android.support'
}
stripe-android
dalam kasus saya.
I'm tidak menggunakan versi yang berbeda dari perpustakaan dan punya kesalahan yang sama, it's terjadi setelah menghapus buildToolsVersion
SEBAGAI RC 1, tetapi menambahkan alat:node="ganti"
melakukan trik, hanya menambahkan ini ke manifest.xml dalam <aplikasi ..../>
block:
<meta-data
tools:node="replace"
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
Hal itu terjadi hal yang sama padaku. Lihat di Gradle -> Membangun Gradle -> dan memastikan bahwa kompatibilitas pertandingan di kedua mengkompilasi "aplikasi compat" dan "dukungan desain" garis, mereka harus memiliki versi yang sama.
Maka untuk menjadi super yakin, bahwa ia akan memulai dengan tidak ada masalah, pergi ke File -> Struktur Proyek ->aplikasi dan centang pada tab propertie build Tools versi, itu harus sama seperti dukungan anda mengkompilasi baris, hanya dalam kasus saya menempatkan target SDK version seperti 25 dan juga pada tab Rasa.
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-
core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
*compile 'com.android.support:appcompat-v7:25.3.1'*
compile 'com.android.support.constraint:constraint-layout:1.0.2'
testCompile 'junit:junit:4.12'
*compile 'com.android.support:design:25.3.1'*
}
Thats apa yang saya lakukan dan berhasil. Good luck!
Aku memecahkan bahwa dengan menempatkan ini di akhir aplikasi modul membangun.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.0'
}
}
}
}
Memperbarui dukungan perpustakaan untuk versi terakhir
Buka File Manifest` , dan menambahkan ini ke File Manifest
<uses-sdk tools:overrideLibrary="android.dukungan.v17.leanback"/>
Dan menambahkan untuk recyclerview di >> membangun.gradle Modul aplikasi
:
compile 'com.android.dukungan:recyclerview-v7:25.3.1'
Dan klik : Sync Sekarang
Jawaban yang diterima tapi satu hal yang anda bisa lakukan adalah untuk mendefinisikan perpustakaan dari struktur proyek anda. Apa yang dapat anda lakukan adalah :
Apa yang terjadi adalah yang telah ditetapkan perpustakaan sebagai off sekarang aku yang'm mengambil appcompat:26.0.0-alpha1 menggunakan versi yang lebih tua dari hal-hal ketika anda menambahkan sesuatu yang baru dan mencoba untuk mengatasinya dengan barang-barang. Ketika anda menambahkan dari struktur proyek anda, itu'll menambahkan hal yang sama tetapi dengan barang baru untuk mengatasinya. Masalah anda akan teratasi.
Kesalahan bagi saya adalah:
Manifest merger failed : Attribute meta-data#android.support.VERSION@value value=(26.0.2) from [com.android.support:percent:26.0.2] AndroidManifest.xml:25:13-35
is also present at [com.android.support:support-v4:26.1.0] AndroidManifest.xml:28:13-35 value=(26.1.0).
Suggestion: add 'tools:replace="android:value"' to <meta-data> element at AndroidManifest.xml:23:9-25:38 to override.
Solusi bagi saya adalah di proyek saya Gradle yang saya butuhkan untuk benjolan saya com.google.rups:google-layanan versi.
Saya menggunakan versi 3.1.1:
classpath 'com.google.gms:google-services:3.1.1
Dan kesalahan teratasi setelah saya terbentur ke versi 3.2.1:
classpath 'com.google.gms:google-services:3.2.1
Saya baru saja upgrade semua pustaka yang terbaru termasuk v27.1.1 dari semua dukungan perpustakaan dan v15.0.0 semua Firebase perpustakaan ketika saya melihat kesalahan.
Saya telah diperbarui android lama proyek untuk Memakai OS. Saya mendapat pesan kesalahan ini saat membangun proyek:
Manifest merger failed : Attribute meta-data#android.support.VERSION@value value=(26.0.2) from [com.android.support:percent:26.0.2] AndroidManifest.xml:25:13-35
is also present at [com.android.support:support-v4:26.1.0] AndroidManifest.xml:28:13-35 value=(26.1.0).
Suggestion: add 'tools:replace="android:value"' to <meta-data> element at AndroidManifest.xml:23:9-25:38 to override.
Saya membangun.gradle untuk Memakai aplikasi ini berisi dependensi ini:
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.google.android.support:wearable:2.4.0'
implementation 'com.google.android.gms:play-services-wearable:16.0.1'
compileOnly 'com.google.android.wearable:wearable:2.4.0'}
SOLUSI:
Menambahkan implementasi 'com.android.dukungan:dukungan-v4:28.0.0'
menjadi dependensi memecahkan masalah saya.
anda coba baca link ini
Kesalahan:Eksekusi gagal untuk tugas ':app:processDevDebugManifest'. Mewujudkan merger gagal : Atribut meta-data#android.support.VERSION@value nilai=(25.3.0) maka usd VERSI 26.0.0