J'étudiais le Android Material Design à l'aide de Kotlin et tout se passait bien jusqu'à ce que j'essaie d'utiliser Android.support.design.widget.FloatingActionButton.
Lorsque j'ai reconstruit le projet, j'ai reçu le message d'erreur ci-dessous:
Information:Gradle tasks [clean, :app:assembleDebug]
C:\Users\qin\.gradle\caches\transforms-1\files-1.1\appcompat-v7-26.1.0.aar\3d5ddc383685b19d22429a29e09f2aeb\res\values\values.xml
Error:(1419, 5) error: style attribute 'attr/textColor (aka br.com.conseng.themedesign:attr/textColor)' not found.
Error:(1525, 5) error: style attribute 'attr/textColor (aka br.com.conseng.themedesign:attr/textColor)' not found.
.....\CursoMaterialDesign\ThemeDesign\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml
Error:(1843) style attribute 'attr/textColor (aka br.com.conseng.themedesign:attr/textColor)' not found.
Error:(1953) style attribute 'attr/textColor (aka br.com.conseng.themedesign:attr/textColor)' not found.
Error:failed linking references.
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 15s
Information:9 errors
Information:0 warnings
Information:See complete output in console
J'ai sauvegardé les fichiers sources sur GitHub et mon environnement est:
J'ai essayé:
gradlew cleanBuildCache --stacktrace --debug
14:05:14.966 [INFO] [org.gradle.internal.nativeintegration.services.NativeServices] Initialized native services in: C:\Users\qin\.gradle\native
14:05:15.038 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]
14:05:15.039 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] FAILURE: Build failed with an exception.
14:05:15.039 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]
14:05:15.039 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] * What went wrong:
14:05:15.042 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Could not determine Java version from '9.0.1'.
14:05:15.042 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]
14:05:15.042 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] * Exception is:
14:05:15.043 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Java.lang.IllegalArgumentException: Could not determine Java version from '9.0.1'.
14:05:15.043 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.JavaVersion.toVersion(JavaVersion.Java:72)
14:05:15.043 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.JavaVersion.current(JavaVersion.Java:82)
14:05:15.043 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.internal.jvm.UnsupportedJavaRuntimeException.assertUsingVersion(UnsupportedJavaRuntimeEx
ception.Java:29)
14:05:15.044 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.Java:32)
14:05:15.044 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.Java:24)
14:05:15.044 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.Java:33)
14:05:15.044 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.Java:22)
14:05:15.044 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.Java:
253)
14:05:15.044 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.Java:
182)
14:05:15.044 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.Main.doAction(Main.Java:33)
14:05:15.044 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.Java:45)
14:05:15.044 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at Java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
14:05:15.044 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at Java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.Java:62)
14:05:15.045 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at Java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.jav
a:43)
14:05:15.045 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at Java.base/Java.lang.reflect.Method.invoke(Method.Java:564)
14:05:15.045 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.Java:60)
14:05:15.045 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.Java:37)
14:05:15.045 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.GradleMain.main(GradleMain.Java:23)
14:05:15.045 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at Java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
14:05:15.045 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at Java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.Java:62)
14:05:15.045 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at Java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.jav
a:43)
14:05:15.046 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at Java.base/Java.lang.reflect.Method.invoke(Method.Java:564)
14:05:15.046 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.wrapper.BootstrapMainStarter.start(BootstrapMainStarter.Java:30)
14:05:15.046 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.Java:129)
14:05:15.046 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.Java:61)
14:05:15.046 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]
14:05:15.046 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]
14:05:15.046 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] * Get more help at https://help.gradle.org
Vous faisiez référence à un attribut "textColor", alors qu'il devrait être "Android: textColor".
Dans app/src/main/res/values / styles.xml, remplacez à la ligne 13 et à la ligne 17:
<item name="textColor">...</item> -> <item name="Android:textColor">...</item>
Le comment: l'erreur de l'AAPT indiquait ce qui suit:
error: l'attribut de style 'attr/textColor (aka br.com.conseng.themedesign: attr/textColor)' est introuvable.
Il indique que vous (ou vos bibliothèques) utilisez un attribut quelque part qui n’est pas reconnu. J'ai cherché "textColor" dans votre référentiel et suis arrivé avec les deux attributs avec le nom "textColor". L'attribut largement utilisé est "Android: textColor" et vous ne définissez vous-même l'attribut "textColor", il semblait donc qu'il vous manquait le préfixe "Android:".
Allez à build.gradle(app)
et ajoutez ceci dans la dépendance:
implementation 'com.Android.support:appcompat-v7:28.0.0'
Actuellement, ma compileSdkVersion
est 28
, donc 28.0.0
.
Essayez de changer en fonction de cela.
Pour ma situation, mon compileSdkVersion <targetSdkVersion dans build.gradle. Il suffit de changer compileSdkVersion> = targetSdkVersion.
Je viens de supprimer ma ressource de couleur, mais elle a été utilisée dans mon style. Vérifiez donc si vos couleurs ne sont vraiment utilisées nulle part par Ctrl+Shift+F
.
Supprimez cette ligne de dependencies
dans le fichier de construction de Gradle:
implementation 'com.Android.support.constraint:constraint-layout:+'