137 votes

Erreur: com.android.tools.aapt2.Aapt2Exception: erreur AAPT2: consultez les journaux pour plus de détails.

Ceci est la sortie de ma console Gradle, je suis incapable de construire mon projet

 D:\Android Projects\....\app\src\main\res\layout\topic_view_header.xml
Error:error: resource attr/?? (aka -packagename- :attr/??) not found.
Error:error: resource attr/?? (aka -packagename-:attr/??) not found.
Error:error: resource attr/?? (aka -packagename-:attr/??) not found.
Error:resource attr/?? (aka -packagename-:attr/??) not found.
Error:resource attr/?? (aka -packagename-:attr/??) not found.
Error:resource attr/?? (aka -packagename-:attr/??) not found.
Error:failed linking file resources.
Error:java.util.concurrent.ExecutionException: 
java.util.concurrent.ExecutionException: 
com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
Error:java.util.concurrent.ExecutionException: 
com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
Error:com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for 
details
Error:Execution failed for task ':app:processDebugResources'.
> Failed to execute aapt
Information:BUILD FAILED in 27s
Information:11 errors
Information:0 warnings
 

Android Studio 3.0 RC 2

113voto

Yash Points 286

Mise à jour 2 (Suivi cette approche)

Vous ne devriez pas le faire maintenant. Au lieu de cela corriger toutes les erreurs. Ce n'est qu'une solution de contournement jusqu'à ce qu'il soit supprimé. Après cela, vous aurez besoin de corriger les erreurs manuellement de toute façon.

Essayez de mettre à jour votre plugin gradle 3.3.0-alpha06 pour vérifier si cela résout votre problème.

Mise à jour 1:

Les caractères Non-ascii problèmes ont été corrigés dans la AAPT2 et android plugin gradle maintenant (yay!). Au lieu de désactiver AAPT2 maintenant vous pouvez simplement utiliser android plugin gradle la version 3.2.0-alpha11 ou plus récent et vous ne devriez pas rencontrer cette erreur plus.

Réponse Originale À Cette Question

Aapt2 est activée par défaut lorsque vous utilisez android plugin gradle 3.0.

C'est à

améliorer les ressources supplémentaires de traitement

comme indiqué ici.

Mais si vous êtes confrontés à des problèmes avec elle, vous pouvez revenir à la version précédente en ajoutant cette en gradle.properties

android.enableAapt2=false

103voto

Enzokie Points 5630

Mise à JOUR

Une nouvelle version de Gradle et Android-gradle-plugin est disponible qui résout ces problèmes.

construire.gradle (haut niveau)

buildscript {
    dependencies {
        classpath 'com.android.tools.build:gradle:3.2.1'
    }
}

gradle-wrapper.propriétés

distributionUrl=https\://services.gradle.org/distributions/gradle-4.8-all.zip

RÉPONSE PRÉCÉDENTE

Si vous désactivez AAPT2 vous êtes juste de cacher le vrai problème.

S'il vous plaît être conscient que AAPT1, pourrait être supprimée dans le futur, par conséquent, vous êtes obligé d'utiliser AAPT2. En fait le guide de migration n'est pas difficile à suivre car vous ne voyez pas que beaucoup de changements en même temps, cette voie est l'épreuve du futur.

Élément hiérarchies dans le manifeste Android

Dans les versions précédentes de AAPT, les éléments imbriqués dans incorrecte nœuds le manifeste Android sont soit ignorés, soit un avertissement. Pour exemple, considérons l'exemple suivant:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.example.myname.myapplication">
   <application
       ...
       <activity android:name=".MainActivity">
           <intent-filter>
               <action android:name="android.intent.action.MAIN" />
               <category android:name="android.intent.category.LAUNCHER" />
           </intent-filter>
           <action android:name="android.intent.action.CUSTOM" />
       </activity>
   </application>
</manifest>

Par conséquent, vous devez d'abord vérifier si votre vraiment de suivre la bonne Manifeste de la structure, comme montré ci-dessous.

Le fichier de manifeste de la structure

L'extrait de code ci-dessous montre la structure générale du manifeste fichier et tous les éléments qu'il peut contenir. Chaque élément, ainsi que tous ses attributs, est entièrement documenté dans un fichier séparé.

<manifest>

    <uses-permission />
    <permission />
    <permission-tree />
    <permission-group />
    <instrumentation />
    <uses-sdk />
    <uses-configuration />  
    <uses-feature />  
    <supports-screens />  
    <compatible-screens />  
    <supports-gl-texture />  

    <application>

        <activity>
            <intent-filter>
                <action />
                <category />
                <data />
            </intent-filter>
            <meta-data />
        </activity>

        <activity-alias>
            <intent-filter> . . . </intent-filter>
            <meta-data />
        </activity-alias>

        <service>
            <intent-filter> . . . </intent-filter>
            <meta-data/>
        </service>

        <receiver>
            <intent-filter> . . . </intent-filter>
            <meta-data />
        </receiver>

        <provider>
            <grant-uri-permission />
            <meta-data />
            <path-permission />
        </provider>

        <uses-library />

    </application>

</manifest>

21voto

J'ai eu une erreur dans ma mise en page XML. Alors vérifiez votre mise en page XML pour les erreurs.

13voto

Jozef Points 364

Vérifier gradle onglet console dans android studio (par défaut dans le coin en bas à droite). Dans mon cas, il y avait des erreurs de ce type:

C:\Users\Jozef Bar??k\.gradle\caches\transforms-1\files-1.1\appcompat-v7-25.4.0.aar\d68bb9d2059935a7891196f4dfb81686\res\drawable-hdpi-v4\abc_ic_menu_share_mtrl_alpha.png: error: file not found.

Error: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
:app:mergeDebugResources FAILED

J'ai résolu le problème de réglage de gradle d'accueil de l'utilisateur à un autre endroit sans blanc, ni de caractères spéciaux:

C:\Android\.gradle

Vous pouvez configurer ce paramètre "Service chemin d'accès au répertoire" dans Gradle boîte de dialogue paramètres. Dans mon cas, il était nécessaire de supprimer les anciens .gradle répertoire sur l'emplacement précédent et redémarrer android studio.

8voto

Samil Points 323

Mon problème était dû à un nom de fichier image se terminant par .9.png . J'ai changé la fin en .png et le problème a disparu. Je suis l'indice de la trace de la pile dans la console Gradle: Le message a été top « Échec de l' exécution de la tâche: app: mergeDebugResources » et le message de fond était « com.android.builder .png .AaptProcess $ NotifierProcessOutput.out. »

J'attends avec impatience le jour où Gradle produira d'autres messages d'erreur utiles ...

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X