Android resource linking failed

原文:https://blog.csdn.net/qq_26585943/article/details/81119065

一.Android resource linking failed

錯(cuò)誤日志1

Android resource linking failed

Output:? error: resource style/Theme.AppCompat.Light.DarkActionBar (aka com.hp.sortfilebysize:style/Theme.AppCompat.Light.DarkActionBar) not found.

E:\ASWorkSpace\SortFileBySize\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:9: error: style attribute 'attr/colorPrimary (aka com.hp.sortfilebysize:attr/colorPrimary)' not found.

E:\ASWorkSpace\SortFileBySize\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:10: error: style attribute 'attr/colorPrimaryDark (aka com.hp.sortfilebysize:attr/colorPrimaryDark)' not found.

E:\ASWorkSpace\SortFileBySize\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:11: error: style attribute 'attr/colorAccent (aka com.hp.sortfilebysize:attr/colorAccent)' not found.

error: failed linking references.

Command: C:\Users\tangdekun\.gradle\caches\transforms-1\files-1.1\aapt2-3.2.0-beta03-4818971-windows.jar\868db5e9c484c628dee78cdbe6877651\aapt2-3.2.0-beta03-4818971-windows\aapt2.exe link -I\

? ? ? ? N:\ProgramFiles\android\sdk\platforms\android-28\android.jar\

? ? ? ? --manifest\

? ? ? ? E:\ASWorkSpace\SortFileBySize\app\build\intermediates\merged_manifests\debug\processDebugManifest\merged\AndroidManifest.xml\

? ? ? ? -o\

? ? ? ? E:\ASWorkSpace\SortFileBySize\app\build\intermediates\processed_res\debug\processDebugResources\out\resources-debug.ap_\

? ? ? ? -R\

? ? ? ? @E:\ASWorkSpace\SortFileBySize\app\build\intermediates\incremental\processDebugResources\resources-list-for-resources-debug.ap_.txt\

? ? ? ? --auto-add-overlay\

? ? ? ? --java\

? ? ? ? E:\ASWorkSpace\SortFileBySize\app\build\generated\not_namespaced_r_class_sources\debug\processDebugResources\r\

? ? ? ? --custom-package\

? ? ? ? com.hp.sortfilebysize\

? ? ? ? -0\

? ? ? ? apk\

? ? ? ? --output-text-symbols\

? ? ? ? E:\ASWorkSpace\SortFileBySize\app\build\intermediates\symbols\debug\R.txt\

? ? ? ? --no-version-vectors

Daemon:? AAPT2 aapt2-3.2.0-beta03-4818971-windows Daemon #0


錯(cuò)誤日志2

Android resource linking failed

Output:? E:\ASWorkSpace\SortFileBySize\app\src\main\res\layout\activity_main.xml:13: error: attribute layout_constraintBottom_toBottomOf (aka com.hp.sortfilebysize:layout_constraintBottom_toBottomOf) not found.

E:\ASWorkSpace\SortFileBySize\app\src\main\res\layout\activity_main.xml:13: error: attribute layout_constraintLeft_toLeftOf (aka com.hp.sortfilebysize:layout_constraintLeft_toLeftOf) not found.

E:\ASWorkSpace\SortFileBySize\app\src\main\res\layout\activity_main.xml:13: error: attribute layout_constraintRight_toRightOf (aka com.hp.sortfilebysize:layout_constraintRight_toRightOf) not found.

E:\ASWorkSpace\SortFileBySize\app\src\main\res\layout\activity_main.xml:13: error: attribute layout_constraintTop_toTopOf (aka com.hp.sortfilebysize:layout_constraintTop_toTopOf) not found.

error: failed linking file resources.

Command: C:\Users\tangdekun\.gradle\caches\transforms-1\files-1.1\aapt2-3.2.0-beta03-4818971-windows.jar\868db5e9c484c628dee78cdbe6877651\aapt2-3.2.0-beta03-4818971-windows\aapt2.exe link -I\

? ? ? ? N:\ProgramFiles\android\sdk\platforms\android-28\android.jar\

? ? ? ? --manifest\

? ? ? ? E:\ASWorkSpace\SortFileBySize\app\build\intermediates\merged_manifests\debug\processDebugManifest\merged\AndroidManifest.xml\

? ? ? ? -o\

? ? ? ? E:\ASWorkSpace\SortFileBySize\app\build\intermediates\processed_res\debug\processDebugResources\out\resources-debug.ap_\

? ? ? ? -R\

? ? ? ? @E:\ASWorkSpace\SortFileBySize\app\build\intermediates\incremental\processDebugResources\resources-list-for-resources-debug.ap_.txt\

? ? ? ? --auto-add-overlay\

? ? ? ? --java\

? ? ? ? E:\ASWorkSpace\SortFileBySize\app\build\generated\not_namespaced_r_class_sources\debug\processDebugResources\r\

? ? ? ? --custom-package\

? ? ? ? com.hp.sortfilebysize\

? ? ? ? -0\

? ? ? ? apk\

? ? ? ? --output-text-symbols\

? ? ? ? E:\ASWorkSpace\SortFileBySize\app\build\intermediates\symbols\debug\R.txt\

? ? ? ? --no-version-vectors

Daemon:? AAPT2 aapt2-3.2.0-beta03-4818971-windows Daemon #0


錯(cuò)誤日志3

Android resource linking failed

Output:? E:\ASWorkSpace\Temp\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values-v28\values-v28.xml:7: error: resource android:attr/dialogCornerRadius not found.

E:\ASWorkSpace\Temp\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values-v28\values-v28.xml:11: error: resource android:attr/dialogCornerRadius not found.

E:\ASWorkSpace\Temp\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:946: error: resource android:attr/fontVariationSettings not found.

E:\ASWorkSpace\Temp\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:946: error: resource android:attr/ttcIndex not found.

error: failed linking references.

Command: C:\Users\tangdekun\.gradle\caches\transforms-1\files-1.1\aapt2-3.2.0-beta03-4818971-windows.jar\868db5e9c484c628dee78cdbe6877651\aapt2-3.2.0-beta03-4818971-windows\aapt2.exe link -I\

? ? ? ? N:\ProgramFiles\android\sdk\platforms\android-27\android.jar\

? ? ? ? --manifest\

? ? ? ? E:\ASWorkSpace\Temp\app\build\intermediates\merged_manifests\debug\processDebugManifest\merged\AndroidManifest.xml\

? ? ? ? -o\

? ? ? ? E:\ASWorkSpace\Temp\app\build\intermediates\processed_res\debug\processDebugResources\out\resources-debug.ap_\

? ? ? ? -R\

? ? ? ? @E:\ASWorkSpace\Temp\app\build\intermediates\incremental\processDebugResources\resources-list-for-resources-debug.ap_.txt\

? ? ? ? --auto-add-overlay\

? ? ? ? --java\

? ? ? ? E:\ASWorkSpace\Temp\app\build\generated\not_namespaced_r_class_sources\debug\processDebugResources\r\

? ? ? ? --custom-package\

? ? ? ? com.hp.temp\

? ? ? ? -0\

? ? ? ? apk\

? ? ? ? --output-text-symbols\

? ? ? ? E:\ASWorkSpace\Temp\app\build\intermediates\symbols\debug\R.txt\

? ? ? ? --no-version-vectors

Daemon:? AAPT2 aapt2-3.2.0-beta03-4818971-windows Daemon #0


問題出現(xiàn)的原因:

Android studio升級(jí)到3.0以上,工程自動(dòng)會(huì)引入Androidx的相關(guān)包,當(dāng)因?yàn)槟承┰?我們把默認(rèn)依賴刪除以后,就會(huì)出現(xiàn)Android resource linking failed,錯(cuò)誤日志1是缺少androidx.appcompat:appcompat:1.0.0-alpha1依賴,錯(cuò)誤日志2是缺少androidx.constraintlayout:constraintlayout:1.1.2依賴,

錯(cuò)誤日志3是因?yàn)閏ompileSdkVersion版本不對(duì),應(yīng)該改為compileSdkVersion 28

解決方案

添加相關(guān)依賴即可,如下:

implementation 'androidx.appcompat:appcompat:1.0.0-alpha1'

implementation 'androidx.constraintlayout:constraintlayout:1.1.2'

1

2

二. java.lang.ClassNotFoundException

? Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.v4.content.FileProvider4Util" on path: DexPathList[[zip file "/data/app/com.hp.temp-1/base.apk"],nativeLibraryDirectories=[/data/app/com.hp.temp-1/lib/arm64, /system/lib64, /vendor/lib64, /system/vendor/lib64, /oem/lib, /oem/lib]]

? ? ? ? at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)

? ? ? ? at java.lang.ClassLoader.loadClass(ClassLoader.java:380)

? ? ? ? at java.lang.ClassLoader.loadClass(ClassLoader.java:312)

? ? ? ? at android.app.ActivityThread.installProvider(ActivityThread.java:5962)

? ? ? ? at android.app.ActivityThread.installContentProviders(ActivityThread.java:5545)

? ? ? ? at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5484)

? ? ? ? at android.app.ActivityThread.-wrap2(ActivityThread.java)

? ? ? ? at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1595)

? ? ? ? at android.os.Handler.dispatchMessage(Handler.java:110)

? ? ? ? at android.os.Looper.loop(Looper.java:203)

? ? ? ? at android.app.ActivityThread.main(ActivityThread.java:6251)

? ? ? ? at java.lang.reflect.Method.invoke(Native Method)

? ? ? ? at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1063)

? ? ? ? at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:924)

? ? ? ? Suppressed: java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v4/content/FileProvider;

? ? ? ? at java.lang.VMClassLoader.findLoadedClass(Native Method)

? ? ? ? at java.lang.ClassLoader.findLoadedClass(ClassLoader.java:742)

? ? ? ? at java.lang.ClassLoader.loadClass(ClassLoader.java:362)

? ? ? ? ? ? ? ? ... 12 more

? ? Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.v4.content.FileProvider" on path: DexPathList[[zip file "/data/app/com.hp.temp-1/base.apk"],nativeLibraryDirectories=[/data/app/com.hp.temp-1/lib/arm64, /system/lib64, /vendor/lib64, /system/vendor/lib64, /oem/lib, /oem/lib]]

? ? ? ? at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)

? ? ? ? at java.lang.ClassLoader.loadClass(ClassLoader.java:380)

? ? ? ? at java.lang.ClassLoader.loadClass(ClassLoader.java:312)

? ? ? ? ? ? ? ? ... 15 more


原因分析:

build.gradle文件如下

apply plugin: 'com.android.application'

apply plugin: 'kotlin-android'

apply plugin: 'kotlin-android-extensions'

android {

? ? compileSdkVersion 28

? ? defaultConfig {

? ? ? ? applicationId "com.hp.temp"

? ? ? ? minSdkVersion 15

? ? ? ? targetSdkVersion 27

? ? ? ? versionCode 1

? ? ? ? versionName "1.0"

? ? ? ? testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"

? ? }

? ? buildTypes {

? ? ? ? release {

? ? ? ? ? ? minifyEnabled false

? ? ? ? ? ? proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'

? ? ? ? }

? ? }

}

dependencies {

? ? implementation fileTree(dir: 'libs', include: ['*.jar'])

? ? implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"

//? ? implementation 'androidx.appcompat:appcompat:1.0.0-alpha1'

? ? implementation 'androidx.constraintlayout:constraintlayout:1.1.2'

? ? implementation 'com.android.support:appcompat-v7:27.1.1'

? ? testImplementation 'junit:junit:4.12'

? ? androidTestImplementation 'androidx.test:runner:1.1.0-alpha3'

? ? androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0-alpha3'

? ? implementation 'com.blankj:utilcode:1.15.0'

}


原因我依賴了implementation 'com.blankj:utilcode:1.15.0',其中有個(gè)FileProvider類找不到,如下:

package android.support.v4.content;

import android.support.annotation.Keep;

/**

* <pre>

*? ? author: Blankj

*? ? blog? : http://blankj.com

*? ? time? : 2018/04/23

*? ? desc? :

* </pre>

*/

@Keep

public final class FileProvider4Util extends FileProvider {

}


由于androidx的使用,架包的分包方式發(fā)生了變化,com.android.support:support-v4被androidx.core代替,但是utilcode架包中并沒有使用androidx分包結(jié)構(gòu),所以就存在問題.

解決方案:

1.不使用androidx分包,將

implementation 'androidx.appcompat:appcompat:1.0.0-alpha1'

1

? implementation 'com.android.support:appcompat-v7:27.1.1'

1

雖然后報(bào)紅,但是不會(huì)報(bào)錯(cuò)

2.重構(gòu)到新的androidx命名空間

工具欄 —>Refactor—>Migrate to AndroidX

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 用兩張圖告訴你,為什么你的 App 會(huì)卡頓? - Android - 掘金 Cover 有什么料? 從這篇文章中你...
    hw1212閱讀 13,950評(píng)論 2 59
  • mean to add the formatted="false" attribute?.[ 46% 47325/...
    ProZoom閱讀 3,165評(píng)論 0 3
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,932評(píng)論 25 709
  • 1.dexDebug ExecException finished with non-zero exit valu...
    nice_demo閱讀 7,225評(píng)論 0 1
  • 紫杏—— 何人也 那是我曾經(jīng)的筆名 相當(dāng)于自信 不知何時(shí)起 紫杏的上進(jìn)之心 倒退了 因?yàn)樯畹臏嫔A粝碌姆N子 從此...
    煢灺閱讀 1,270評(píng)論 12 15

友情鏈接更多精彩內(nèi)容