2013-12-23 73 views
79

我使用bitbucket,所以我可以與其他開發人員合作,但似乎我們無法完美地工作。我從他拉更改後得到這個錯誤:執行失敗的應用程序:processDebugResources Android Studio

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

我有這個問題,事實證明我的資產文件夾中有一個特殊長文件名。 – Jack

+0

而且如果文件或圖像名稱中存在非英文字符,您將遇到同樣的問題。我今天發現。 –

回答

77

對於我來說,幫助改變編譯工具的版本:

buildToolsVersion "21.0.1" 

你會發現文件app/build.gradle這裏面設置。

+0

是否改變這對實際項目有任何副作用? – committedandroider

+0

我使用過'21.1.1' –

+7

感謝這傢伙,如果你仍然對你下載的sdk管理器感到困惑,看看最新版本的Android SDK build-Tools是什麼。然後改變你的gradle構建文件到我現在的版本是22.0.1。我們正在使用有關工作室和Gradle之間的這種碎片化:) –

33

你打的bug https://code.google.com/p/android/issues/detail?id=42752。原因通常似乎是對您的某個菜單資源中不存在的字符串的引用。

+0

我有一個'dimen'這個問題:'字符串類型不允許(在'navigation_drawer_width'值'320p'' – Zapnologica

+1

謝謝@Scott,更具體地說,R.java得到錯誤,由於錯誤的資源名稱,這就是爲什麼 –

+0

在我的情況下,我在string.xml文件中添加了撇號('s),在刪除它的工作後,它非常煩人,IDE無法正確顯示錯誤,而是使所有資源不同步。 。 – MobileEvangelist

10

我的答案似乎有點太晚了,但是在將SDK升級到API 21後,我碰巧遇到了Android Studio中的相同錯誤。我嘗試了在此站點上遇到的所有解決方案,並嘗試了https://code.google.com/p/android/issues/detail?id=61308。下面是我最終原來決心此錯誤: 我打開應用程序的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帶來了問題。我希望這也能幫助其他人。

-2

變化的SDK版本,以21如果20還確保構建版本號爲21.0.1

6

我有同樣的問題,並固定它做./gradlew clean build!嘗試一下,如果這不起作用,請嘗試./gradlew --refresh-dependencies後,你應該很好去。

+5

這並不完全有幫助,但我學到了一些東西 –

33

對我來說,是我忘了安裝32位的依賴關係:

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

+2

我在使用myApp Ionic Android示例的Ubuntu環境中構建一個簡單的APK時遇到了很多問題,安裝這些缺失的依賴項解決了我的問題! – JLavoie

+1

這對我有效。 ubuntu 16.04 with cordova 6.1 –

+0

你在你的項目文件夾或Android系統文件夾中安裝了哪個文件夾? – Azurespot

0

在我的情況下,crashlytics(Fabric.io)是生成相沖突在某一時刻的文件和第二個文件是自動用無效名稱生成。

長話短說:檢查你是否沒有任何長度無效的文件名,應該在原始異常之上提醒你。

0

我得到了這個問題,通過重建項目中刪除我解決了這個日誌後

+2

如果只是這樣簡單.... –

0

去搖籃面板,並通過它 雙擊消息行運行它,它會顯示您的項目是,例如錯誤 也許你有一個聲音或電影或文件或...它在你的項目上緊湊在谷歌Android 我真的很抱歉,我的英語真的很差

15

aapt是32位,所以不會執行直到啓用32位架構的64位盒子

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 –

+0

當你使用Ubuntu 16.04,你應該安裝這2個依賴關係 –

0

當您在資源名稱中使用Java關鍵字時會出現此錯誤。

1

得到這個錯誤,我用--info(gradle --info build)做了一個構建。它報告說由於錯誤的ELFCLASS,它無法打開libz.so.1。它需要 一個32位版本的libz。我必須下載源代碼,將Makefile 更改爲gcc -m32,並安裝32位glibc開發包(dnf install glibc-devel.i686)。在製作和安裝這個32位庫之後,我禁用了64位的一個。

然後一切順利。

2

我遇到了執行失敗的應用程序:processDebugResources升級SDK庫後的Android Studio。我使用Android Studio 1.5.1,目標SDK版本23.我之前使用buildToolsVersion 21.0.1,將buildToolsVersion更改爲21.1.2解決了我的問題。

您可能想要我如何找到適合的版本21.1.2。在成功升級我的SDK後,它被Android Studio推薦。

enter image description here

改變buildToolsVersion到21.1.2之後(請參閱下面我的版本設置),您需要同步您的搖籃建立機制。

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將提示您同步搖籃,或者你可以去「菜單欄>文件>同步」手動觸發同步。同步後,Android Studio將重建您的項目。

enter image description here

我知道有與SDK的數據庫和配置許多問題,我所提出的解決方案可能不會解決所有問題。但是如果在升級SDK存儲庫後遇到類似的錯誤,我希望我的帖子解決你的麻煩。祝你好運!

+0

這是一個寫得很好的答案,但請不要複製和粘貼確切同樣的事情多個[答案](http://stackoverflow.com/a/35532538/189134)。 – Andy

1

在我的情況下,我試圖更改buildToolsVersiongradle,但它並沒有幫助我。當我找到可繪製的問題時,我的問題得到解決,其中稱爲example.PNG。應該是example.png; 沒有關於錯誤資源名稱的消息,但在我重命名文件後,gradle構建的項目正常。

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 files from drawable folder to mipmap folder.

1

我有同樣的問題soved,由於這個問題是對谷歌的第一擊,我也加入我的解決方案。 對我而言,res/values/attrs.xml中的一個attr元素中缺少format屬性。

7

在我的情況下,我清理了項目(菜單欄 - >構建 - >清理項目),然後再次構建。有效。

0

這對我來說只需重新啓動android studio 2次即可:D。 我正在使用Android Studio 2.1。

0

對我來說,這是我的資源錯誤,只是改變了資源文件夾和res文件夾(即爲Android)我的項目的資源,它工作正常。

建立成功

總時間:1分10.034秒

-3

對於我來說,巴西的,問題是在我的檔案加重!

「COPIA德MyData.html」 - >「CopiaMyData.html」

0

我解決它通過改變構建工具版本21.0.1至20.0.0

2

如果不是您的構建工具,檢查你的字符串,樣式,attrs,... XML文件,並確保它們是正確的。 例如具有空名稱屬性

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

或以前未定義ATTR不指定格式的字符串(attrs.xml):

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

它像一個魅力。 –

0

有可能是在您的佈局一些錯誤像android:id="@id/而不是android:id="@+id/...。至少這是我例外的原因。

0

檢查是否有SDK平臺部分安裝。如果有,請重新安裝。

1

--stacktrace運行gradle選項可以查看更多信息,出了什麼問題。

0

在這附近徘徊了2天。

TL; DR - 自從我的應用程序名稱包含' - '後出現此錯誤。

轉出android不允許。 在android目錄下運行gradlew build --stacktrace之後 - 得到了一個暗示的錯誤。

0

我偶然發現了這個錯誤,同時從2.3版本更新我的Android工作室到3.0.1。在嘗試了上述所有解決方案後,我發現問題出在Build工具版本上。我使用的是不受支持的版本的構建工具。我改變了我的下面,它的工作。

buildToolsVersion '26.0.2' 

作爲一個經驗法則,總是嘗試使用您的Gradle版本支持的最新版本的Build工具。從Gradle 3.0.0版本開始,您不需要指定構建工具版本,因爲它會自動提取。

3.0.0 (October 2017) : Android plugin for Gradle 3.0.0

With this update, you no longer need to specify a version for the build tools—the plugin uses the minimum required version by default. So, you can now remove the android.buildToolsVersion property.

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

0

對於我來說,我不得不在管理員模式下運行Android工作室。

Windows 10 x64

相關問題