แอปที่ดำเนินการล้มเหลว: processDebugResources Android Studio


124

ฉันใช้ bitbucket ดังนั้นฉันจึงสามารถทำงานร่วมกับนักพัฒนาคนอื่น ๆ ได้ แต่ดูเหมือนว่าเราจะไม่สามารถใช้งานได้อย่างไม่มีที่ติ ฉันได้รับข้อผิดพลาดนี้หลังจากดึงการเปลี่ยนแปลงจากเขา:

Execution failed for task ':app:processDebugResources'.
> com.android.ide.common.internal.LoggedErrorException: Failed to run command:
    E:\Program Files (x86)\Android\android-sdk\build-tools\19.0.0\aapt.exe package -f --no-crunch -I E:\Program Files (x86)\Android\android-sdk\platforms\android-19\android.jar -M E:\Documents\smart-my-job1\app\build\manifests\debug\AndroidManifest.xml -S E:\Documents\smart-my-job1\app\build\res\all\debug -A E:\Documents\smart-my-job1\app\build\assets\debug -m -J E:\Documents\smart-my-job1\app\build\source\r\debug -F E:\Documents\smart-my-job1\app\build\libs\app-debug.ap_ --debug-mode --custom-package com.smartmyjob
Error Code:
    -1073741819

1
ฉันมีปัญหานี้และปรากฎว่าฉันมีชื่อไฟล์ที่ยาวเป็นพิเศษสำหรับไฟล์ในโฟลเดอร์เนื้อหาของฉัน
แจ็ค

และหากมีอักขระที่ไม่ใช่ภาษาอังกฤษในชื่อไฟล์หรือรูปภาพคุณจะมีปัญหาเช่นเดียวกัน ฉันค้นพบวันนี้
Fuat

คำตอบ:


108

สำหรับฉันมันช่วยในการเปลี่ยนเวอร์ชันของ buildTools เป็น:

buildToolsVersion "21.0.1"

app/build.gradleคุณจะพบการตั้งค่านี้ภายในแฟ้ม


1
การเปลี่ยนแปลงนี้มีผลข้างเคียงกับโครงการจริงหรือไม่?
committedandroider

11
ขอบคุณผู้ชายคนนี้หากคุณยังสับสนให้ลองดูตัวจัดการ sdk ที่ดาวน์โหลดมาและดูว่าเวอร์ชันล่าสุดของ Android SDK build-Tools คืออะไร จากนั้นเปลี่ยนไฟล์บิวด์ gradle ของคุณเป็นเวอร์ชันของฉันตอนนี้คือ 22.0.1 เรากำลังคุ้นเคยกับการแยกส่วนระหว่างสตูดิโอและ Gradle :)
afra mehrparvar

2
ฉันเพิ่งเคยใช้ Android Studio ต้องทำอย่างไร
Shahid Karimi

@MarthaJames app/build.gradleคุณจะพบการตั้งค่าที่อยู่ภายในไฟล์
Alexander Suraphel

3
ฉันมี buildToolsVersion "23.0.1" ล่าสุด ยังคงมีปัญหาอยู่
Tushar Banne

41

คุณกำลังตีข้อผิดพลาดhttps://code.google.com/p/android/issues/detail?id=42752 สาเหตุมักจะเป็นการอ้างถึงสตริงที่ไม่มีอยู่ในทรัพยากรเมนูของคุณ


ฉันมีปัญหากับ a dimen: String types not allowed (at 'navigation_drawer_width' with value '320p'
Zapnologica

1
ขอบคุณ @Scott เพื่อให้เจาะจงมากขึ้น R.java ได้รับข้อผิดพลาดเนื่องจากชื่อทรัพยากรไม่ถูกต้องนั่นจึงเป็นสาเหตุที่แสดงข้อผิดพลาด
Lalit Sharma

ในกรณีของฉันฉันได้เพิ่มเครื่องหมายวรรคตอนในสตริงในไฟล์ string.xml หลังจากลบมันใช้งานได้ มันน่ารำคาญมากที่ IDE ไม่สามารถแสดงข้อผิดพลาดได้อย่างถูกต้อง แต่ทำให้ทรัพยากรทั้งหมดไม่ตรงกัน ..
MobileEvangelist

พบปัญหาเดียวกันโดยมี<string name="">ข้อ จำกัด ในstrings.xmlไฟล์ของฉัน สองเท่าว่าstrings.xmlไฟล์ของคุณถูกต้อง!
MatsLindh

ฉันได้รับข้อผิดพลาดนี้เมื่อเรียกใช้คำสั่ง "gradle clean build --stacktrace --debug" เนื่องจากไม่มีไฟล์ไอคอน ขอบคุณ
David Tao

39

สำหรับฉันฉันลืมติดตั้งการอ้างอิง 32 บิต:

sudo apt-get install -y lib32gcc1 libc6-i386 lib32z1 lib32stdc++6
sudo apt-get install -y lib32ncurses5 lib32gomp1 lib32z1-dev lib32bz2-dev

2
ฉันมีปัญหามากมายในการสร้าง APK ง่ายๆบนสภาพแวดล้อม Ubuntu ด้วย myApp Ionic ตัวอย่างใน Android การติดตั้งการอ้างอิงที่ขาดหายไปเหล่านี้ช่วยแก้ปัญหาของฉันได้!
JLavoie

คุณติดตั้งโฟลเดอร์ใดไว้ในโฟลเดอร์โครงการหรือโฟลเดอร์ระบบ Android
Azurespot

คำถามนี้ใช้ไม่ได้ - 'apt-get' ติดตั้งแพ็คเกจในระบบ
dirkk0

15

aapt เป็น 32 บิตดังนั้นจะไม่ดำเนินการบนกล่อง 64 บิตจนกว่าจะเปิดใช้งานสถาปัตยกรรม 32 บิต

dpkg --print-foreign-architectures  #  if prints nothing then below is fix

sudo dpkg --add-architecture i386  #  add a 32 bit architecture to box

sudo apt-get install -y lib32gcc1 libc6-i386 lib32z1 lib32stdc++6

sudo apt-get install -y lib32ncurses5 lib32gomp1 lib32z1-dev

มันได้ผลสำหรับฉัน


4
สิ่งเหล่านี้จำเป็นสำหรับ Ubuntu 16.04
Luís Rigoni

เมื่อคุณใช้ Ubuntu 16.04 คุณควรติดตั้งการพึ่งพา 2 ตัวนี้
ธรรมะสายสิระภู

13

ฉันมีปัญหาเดียวกันและแก้ไขโดยทำ./gradlew clean build! ลองดูและหากไม่ได้ผลให้ลองทำ./gradlew --refresh-dependenciesภายหลังและคุณควรจะไป


11

คำตอบของฉันอาจดูช้าเกินไป แต่ฉันบังเอิญเจอข้อผิดพลาดเดียวกันนี้ใน Android Studio หลังจากอัปเกรด SDK เป็น API 21 ฉันลองใช้วิธีแก้ปัญหาทั้งหมดที่พบที่นี่ในไซต์นี้และhttps://code.google ดอทคอม ต่อไปนี้เป็นวิธีแก้ไขข้อผิดพลาดนี้ในที่สุด: ฉันเปิดไฟล์ gradle.build ของแอปและเปลี่ยนจากสิ่งนี้:

android {
    compileSdkVersion 21
    buildToolsVersion "21.0.0"

    defaultConfig {
        applicationId "com.abundantideas.layoutsample"
        minSdkVersion 8
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }

ไปที่:

android {
    compileSdkVersion 21
    buildToolsVersion "20.0.0"

    defaultConfig {
        applicationId "com.abundantideas.layoutsample"
        minSdkVersion 8
        targetSdkVersion 20
        versionCode 1
        versionName "1.0"
    }

ฉันลดค่า buildToolsVersion และ targetSdkVersion กลับเป็น 20 ซึ่งฉันรู้ว่าทำงานได้ดีก่อนการอัปเกรด ดูเหมือนว่า API 21 ทำให้เกิดปัญหากับ Gradle ในกรณีของฉัน ฉันหวังว่านี่จะช่วยคนอื่นด้วย


7

ในกรณีของฉันฉันทำความสะอาดโครงการ (เมนู -> สร้าง -> โครงการสะอาด) จากนั้นสร้างอีกครั้ง มันได้ผล


4

ในกรณีของฉันฉันมีคำประกาศ

<?xml version="1.0" encoding="utf-8"?>

ในไอคอนเวกเตอร์ที่วาดได้ของฉัน

สิ่งที่ฉันต้องทำคือลบทิ้ง



2

ฉันพบแอป Execution ล้มเหลว: processDebugResources Android Studio หลังจากอัปเกรดที่เก็บ SDK ฉันใช้ Android Studio 1.5.1 เป้าหมาย SDK เวอร์ชัน 23 ฉันใช้ buildToolsVersion 21.0.1 ก่อนหน้านี้การเปลี่ยน buildToolsVersion เป็น 21.1.2 ช่วยแก้ปัญหาของฉันได้

คุณอาจต้องการวิธีที่ฉันพบว่าเวอร์ชัน 21.1.2 เหมาะสม แนะนำโดย Android Studio หลังจากอัปเกรด SDK ของฉันสำเร็จแล้ว

ใส่คำอธิบายภาพที่นี่

หลังจากเปลี่ยน buildToolsVersion เป็น 21.1.2 (ดูการตั้งค่าเวอร์ชันของฉันด้านล่าง) คุณต้องซิงโครไนซ์กลไกการสร้าง Gradle ของคุณ

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "21.1.2"

    defaultConfig {
        applicationId "mm.weboffice"
        minSdkVersion 14
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:23.0.1'
    compile 'com.android.support:cardview-v7:23.0.1'
    compile 'com.android.support:recyclerview-v7:23.0.1'
    compile 'com.android.support:design:23.0.1'
    compile 'com.android.support:support-v4:23.0.1'
}

Android Studio จะแจ้งให้คุณซิงค์ Gradle หรือคุณสามารถไปที่ "เมนู> ไฟล์> ซิงโครไนซ์" เพื่อทริกเกอร์การซิงโครไนซ์ด้วยตนเอง Android Studio จะสร้างโครงการของคุณใหม่หลังจากการซิงโครไนซ์

ใส่คำอธิบายภาพที่นี่

ฉันรู้ว่ามีปัญหามากมายเกี่ยวกับฐานข้อมูล SDK และการกำหนดค่าโซลูชันที่ฉันเสนออาจไม่สามารถแก้ไขปัญหาทั้งหมดได้ แต่ถ้าคุณพบข้อผิดพลาดที่คล้ายกันหลังจากอัปเกรดที่เก็บ SDK ฉันหวังว่าโพสต์ของฉันจะช่วยแก้ปัญหาของคุณได้ โชคดี!


นี่คือคำตอบที่เขียนดี แต่โปรดอย่าคัดลอกและวางสิ่งเดียวที่แน่นอนหลายคำตอบ
แอนดี้

2

ในกรณีของฉันฉันพยายามที่จะเปลี่ยนbuildToolsVersionในgradleแต่มันก็ไม่ได้ช่วยฉัน ปัญหาของฉันได้รับการแก้ไขเมื่อผมพบว่า drawable ซึ่งเรียกว่า example.PNG ควรเป็นexample.png ; ไม่มีข้อความเกี่ยวกับชื่อทรัพยากรที่ไม่ถูกต้อง แต่หลังจากฉันเปลี่ยนชื่อไฟล์โครงการที่สร้างขึ้น gradle ก็ดี


2

หากไม่ใช่เครื่องมือสร้างของคุณให้ตรวจสอบสตริงสไตล์ Attrs ... ไฟล์ XMLและตรวจสอบว่าถูกต้อง ตัวอย่างเช่นสตริงที่มีแอตทริบิวต์ชื่อว่าง

<string name="">Test"</string>

หรือAttr ที่ไม่ได้กำหนดไว้ก่อนหน้านี้โดยไม่มีรูปแบบที่ระบุ ( attrs.xml ):

<declare-styleable name="MediaGridView">
    <attr name="allowVideo"/>
</declare-styleable>

2

กระแทกหัวของฉันรอบนี้เป็นเวลา 2 วัน

TL; DR - ได้รับข้อผิดพลาดนี้เนื่องจากชื่อแอปของฉันมี "-"

ปรากฎว่า Android ไม่อนุญาตให้ทำเช่นนั้น หลังจากเรียกใช้gradlew build --stacktraceในไดเรกทอรี Android - ได้รับข้อผิดพลาดที่บ่งบอกถึงสิ่งนั้น


2

มันอาจช่วยได้ในแอพ android studio 3.2.1 build gradle ที่ควรจะเป็น

android {
    compileSdkVersion 27
    buildToolsVersion '28.0.3'
    defaultConfig {
        applicationId "com.sample.mvphelloworld"
        minSdkVersion 21
        targetSdkVersion 27
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
       implementation fileTree(dir: 'libs', include: ['*.jar'])
       compile 'com.android.support:appcompat-v7:27.1.1'
       implementation 'com.android.support.constraint:constraint-layout:1.1.3'
       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'
}

Gradle to 4.6
เวอร์ชันปลั๊กอินเป็น 3.2.1


1

รับข้อผิดพลาดนี้ฉันสร้างด้วย --info (gradle --info build) มีรายงานว่าไม่สามารถเปิด libz.so.1 ได้เนื่องจาก ELFCLASS ผิด ต้องการ libz เวอร์ชัน 32 บิต ฉันต้องดาวน์โหลดซอร์สเปลี่ยน Makefile เป็น gcc -m32 และติดตั้งแพ็คเกจการพัฒนา glibc 32 บิต (dnf ติดตั้ง glibc-devel.i686) หลังจากสร้างและติดตั้งไลบรารี 32 บิตนี้ฉันปิดใช้งาน 64 บิต

จากนั้นทั้งหมดก็เป็นไปด้วยดี


1

ฉันมีปัญหาเดียวกันและเนื่องจากคำถามนี้เป็นคำถามแรกใน Google ฉันจะเพิ่มวิธีแก้ปัญหาของฉันด้วย สำหรับฉันมันเป็นformatแอตทริบิวต์ที่ขาดหายไปในattrองค์ประกอบในres/values/attrs.xml.




1

เรียกใช้ gradle ด้วย--stacktraceตัวเลือกเพื่อดูข้อมูลเพิ่มเติมมีอะไรผิดปกติ


0

ในกรณีของฉัน crashlytics (Fabric.io) กำลังสร้างไฟล์ที่ขัดแย้งกันในบางจุดและไฟล์ที่สองถูกสร้างขึ้นโดยอัตโนมัติด้วยชื่อที่ไม่ถูกต้อง

เรื่องสั้นขนาดยาว: ตรวจสอบว่าคุณไม่มีชื่อไฟล์ที่มีความยาวไม่ถูกต้องหรือไม่คุณควรได้รับคำเตือนเหนือข้อยกเว้นเดิม


0

ฉันพบปัญหานี้หลังจากลบบันทึกฉันได้แก้ไขปัญหานี้โดยการสร้างโครงการใหม่


0

ไปที่แผง Gradle และเรียกใช้โดยดับเบิลคลิกที่มันในบรรทัดข้อความซึ่งจะแสดงให้คุณเห็นว่าโครงการของคุณมีข้อผิดพลาดเช่นบางทีคุณอาจมีเสียงหรือภาพยนตร์หรือไฟล์หรือ ... ขอโทษจริงๆที่ภาษาอังกฤษของฉันแย่มาก


0

คุณได้รับข้อผิดพลาดนี้เมื่อคุณใช้คีย์เวิร์ด Java ในชื่อทรัพยากรของคุณ


0

มีปัญหาเดียวกัน ฉันเปลี่ยนไฟล์ build.gradle ภายในโฟลเดอร์แอพจากสิ่งนี้: compileSdkVersion 23 buildToolsVersion "23.0.2"

defaultConfig {
    applicationId "com.vastsoftware.family.farmingarea"
    minSdkVersion 11
    targetSdkVersion 23
    versionCode 1
    versionName "1.0"

สำหรับสิ่งนี้:

compileSdkVersion 23 buildToolsVersion "21.0.2"

defaultConfig {
    applicationId "com.vastsoftware.family.farmingarea"
    minSdkVersion 11
    targetSdkVersion 21
    versionCode 1
    versionName "1.0"

และทำงานได้อย่างสมบูรณ์แบบ! หวังว่ามันจะเหมาะกับคุณเช่นกัน!


0

ฉันมีปัญหาเดียวกันและรักโดยการย้าย

ic_launcher.png จากโฟลเดอร์ที่วาดได้ไปยังโฟลเดอร์ mipmap


0

สำหรับฉันมันเป็นข้อผิดพลาดกับทรัพยากรของฉันเพียงแค่เปลี่ยนทรัพยากรของโครงการของฉันในโฟลเดอร์ทรัพยากรและโฟลเดอร์ res (เช่นสำหรับ Android) และมันก็ทำงานได้ดี

สร้างความสำเร็จ

เวลารวม: 1 นาที 10.034 วินาที


0

อาจจะมีข้อผิดพลาดบางอย่างในรูปแบบที่คุณชอบแทนandroid:id="@id/ android:id="@+id/...อย่างน้อยนั่นก็เป็นสาเหตุของข้อยกเว้นของฉัน


0

ตรวจสอบว่ามีการติดตั้งแพลตฟอร์ม SDK บางส่วนหรือไม่ หากมีให้ติดตั้งใหม่


0

ฉันพบข้อผิดพลาดนี้ขณะอัปเดตสตูดิโอ Android เป็น 3.0.1 จาก 2.3 หลังจากลองใช้วิธีแก้ปัญหาทั้งหมดข้างต้นแล้วฉันพบว่าปัญหาเกิดจากเวอร์ชัน Build tools ฉันใช้เครื่องมือสร้างเวอร์ชันที่ไม่รองรับ ฉันเปลี่ยนของฉันตามด้านล่างและได้ผล

buildToolsVersion '26.0.2'

ตามหลักทั่วไปแล้วให้พยายามใช้เครื่องมือสร้างเวอร์ชันล่าสุดที่รองรับโดย Gradle เวอร์ชันของคุณ จาก Gradle เวอร์ชัน 3.0.0 คุณไม่จำเป็นต้องระบุเวอร์ชันเครื่องมือสร้างเนื่องจากระบบจะเลือกเวอร์ชันนี้โดยอัตโนมัติ

3.0.0 (ตุลาคม 2017): ปลั๊กอิน Android สำหรับ Gradle 3.0.0

ด้วยการอัปเดตนี้คุณไม่จำเป็นต้องระบุเวอร์ชันสำหรับเครื่องมือสร้างอีกต่อไปปลั๊กอินจะใช้เวอร์ชันขั้นต่ำที่จำเป็นตามค่าเริ่มต้น ตอนนี้คุณสามารถลบคุณสมบัติ android.buildToolsVersion ได้แล้ว

https://developer.android.com/studio/releases/gradle-plugin.html#3-0-0


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.