Error en la sincronización de Android Studio 3.0 Gradle: java.lang.AssertionError (en UnresolvedDependenciesReporter)
Al migrar a Android Studio 3.0-beta1, estoy corriendo en un fallo de sincronización de gradle error que no proporciona mucha información. No hay ningún mensaje de error en la consola gradle. Tuve que ir al archivo idea.log para obtener la siguiente traza de pila:
java.lang.RuntimeException: java.lang.AssertionError at com.intellij.openapi.application.TransactionGuardImpl.submitTransactionAndWait(TransactionGuardImpl.java:174) at com.intellij.openapi.command.WriteCommandAction.execute(WriteCommandAction.java:155) at com.android.tools.idea.gradle.project.sync.idea.data.service.ModuleModelDataService.importData(ModuleModelDataService.java:80) at com.android.tools.idea.gradle.project.sync.idea.data.service.ModuleModelDataService.importData(ModuleModelDataService.java:50) at com.intellij.openapi.externalSystem.service.project.manage.ProjectDataManager.doImportData(ProjectDataManager.java:246) at com.intellij.openapi.externalSystem.service.project.manage.ProjectDataManager.importData(ProjectDataManager.java:143) at com.intellij.openapi.externalSystem.service.project.manage.ProjectDataManager.importData(ProjectDataManager.java:198) at com.intellij.openapi.externalSystem.service.project.manage.ProjectDataManager.importData(ProjectDataManager.java:204) at com.android.tools.idea.gradle.project.sync.idea.IdeaSyncPopulateProjectTask.doSelectiveImport(IdeaSyncPopulateProjectTask.java:206) at com.android.tools.idea.gradle.project.sync.idea.IdeaSyncPopulateProjectTask.populate(IdeaSyncPopulateProjectTask.java:156) at com.android.tools.idea.gradle.project.sync.idea.IdeaSyncPopulateProjectTask.access$000(IdeaSyncPopulateProjectTask.java:51) at com.android.tools.idea.gradle.project.sync.idea.IdeaSyncPopulateProjectTask$1.run(IdeaSyncPopulateProjectTask.java:144) at com.intellij.openapi.progress.impl.CoreProgressManager$TaskRunnable.run(CoreProgressManager.java:726) at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$1(CoreProgressManager.java:176) at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:556) at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:501) at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:66) at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:163) at com.intellij.openapi.progress.impl.ProgressManagerImpl$1.run(ProgressManagerImpl.java:137) at com.intellij.openapi.application.impl.ApplicationImpl$2.run(ApplicationImpl.java:334) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Caused by: java.lang.AssertionError at com.android.tools.idea.gradle.project.sync.issues.UnresolvedDependenciesReporter.report(UnresolvedDependenciesReporter.java:79) at com.android.tools.idea.gradle.project.sync.issues.SyncIssuesReporter.report(SyncIssuesReporter.java:86) at com.android.tools.idea.gradle.project.sync.issues.SyncIssuesReporter.report(SyncIssuesReporter.java:71) at com.android.tools.idea.gradle.project.sync.setup.module.android.DependenciesAndroidModuleSetupStep.doSetUpModule(DependenciesAndroidModuleSetupStep.java:98) at com.android.tools.idea.gradle.project.sync.setup.module.android.DependenciesAndroidModuleSetupStep.doSetUpModule(DependenciesAndroidModuleSetupStep.java:64) at com.android.tools.idea.gradle.project.sync.setup.module.ModuleSetupStep.setUpModule(ModuleSetupStep.java:34) at com.android.tools.idea.gradle.project.sync.setup.module.AndroidModuleSetup.setUpModule(AndroidModuleSetup.java:44) at com.android.tools.idea.gradle.project.sync.idea.data.service.AndroidModuleModelDataService.setUpModule(AndroidModuleModelDataService.java:93) at com.android.tools.idea.gradle.project.sync.idea.data.service.AndroidModuleModelDataService.importData(AndroidModuleModelDataService.java:79) at com.android.tools.idea.gradle.project.sync.idea.data.service.ModuleModelDataService$1.run(ModuleModelDataService.java:78) at com.intellij.openapi.command.WriteCommandAction$Simple.run(WriteCommandAction.java:234) at com.intellij.openapi.application.RunResult.run(RunResult.java:35) at com.intellij.openapi.command.WriteCommandAction.lambda$null$1(WriteCommandAction.java:171) at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:1023) at com.intellij.openapi.command.WriteCommandAction.lambda$performWriteCommandAction$2(WriteCommandAction.java:170) at com.intellij.openapi.command.WriteCommandAction.lambda$doExecuteCommand$4(WriteCommandAction.java:210) at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:149) at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:119) at com.intellij.openapi.command.WriteCommandAction.doExecuteCommand(WriteCommandAction.java:212) at com.intellij.openapi.command.WriteCommandAction.performWriteCommandAction(WriteCommandAction.java:168) at com.intellij.openapi.command.WriteCommandAction.lambda$execute$0(WriteCommandAction.java:155) at com.intellij.openapi.application.TransactionGuardImpl.lambda$submitTransactionAndWait$2(TransactionGuardImpl.java:163) at com.intellij.openapi.application.TransactionGuardImpl.runSyncTransaction(TransactionGuardImpl.java:86) at com.intellij.openapi.application.TransactionGuardImpl.lambda$submitTransaction$1(TransactionGuardImpl.java:109) at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.runNextEvent(LaterInvocator.java:410) at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:399) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:762) at java.awt.EventQueue.access$500(EventQueue.java:98) at java.awt.EventQueue$3.run(EventQueue.java:715) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80) at java.awt.EventQueue.dispatchEvent(EventQueue.java:732) at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:827) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:655) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:365) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Seguí la documentación de migración pero todavía no puedo conseguir que la sincronización se ejecute correctamente. No estoy seguro si esto es un problema en Android Studio 3.0-beta1 o mi configuración de proyecto. He ejecutado otros proyectos y creado otros nuevos con Android Studio 3.0-alphaX tan inclinado hacia mi proyecto.
- El icono de herencia no se muestra al usar el icono de adaptación
- Migrar a Android Studio: cómo configurar mejor la vista de logcat
- Módulo de enlace de proyecto externo en Android Studio
- Android O (API 26) El emulador de vista previa no se inicia
- Aumentar la visibilidad de una vista en Swipe con Gestos en android
- Vista previa de enlaces en android
- Android Studio 64-bit ERROR: Linux de 32 bits Los binarios del emulador de Android son DEPRECATED
- La llamada requiere el nivel 23 de API: error getForeground (), pero es un método FrameLayout ya que API 1
- Necesita una barra de estado completamente transparente
- La versión de las herramientas de plataforma SDK (24.0.4) es demasiado antigua para comprobar las API compiladas con la API 25; por favor actualice
- No "Configuración del proyecto" en "Estructura del proyecto"
- Android OrderedBroadcast No funciona en la versión de lanzamiento
- Comprueba qué clase utiliza las API de la biblioteca de Android
El problema era que no seleccioné los valores por defecto para los tipos de construcción que faltan. Mi proyecto tiene 2 módulos con la siguiente configuración de tipos de construcción:
Data / build.gradle
apply plugin: 'com.android.library' android { ... buildTypes { debug { ... } release { ... } } }
App / build.gradle
apply plugin: 'com.android.application' android { ... buildTypes { debug { ... } dev { ... } qa { ... } rc { ... } release { ... } } }
Con el último plugin gradle de Android, los tipos de compilación deben coincidir entre la biblioteca y los módulos de aplicación. Mi problema era que mi módulo de datos no definía los tipos de construcción dev
, qa
y rc
. buildTypeMatching
esto usando buildTypeMatching
en mi módulo de aplicación:
App / build.gradle
apply plugin: 'com.android.application' android { ... buildTypeMatching 'dev', 'debug' buildTypeMatching 'qa', 'debug' buildTypeMatching 'rc', 'release' buildTypes { debug { ... } dev { ... } qa { ... } rc { ... } release { ... } } }
También puede agregar las variantes que faltan a los módulos de la biblioteca también.
Me encontré con este informe de error que parecía ser mi mismo problema. Parece que hay un error en la mensajería de error, que esperamos que se solucione.
Intenta hacerlo
- Construir -> Proyecto limpio
Funcionó en un problema similar, pero para mí fue porque me olvidé de inicializar mis submódulos git que resultó en un módulo android no beeing allí lanzando el mismo error …
Este error me pasó a mí también. Resulta que es la misma razón que kyhule, el buildTypes en diferentes gradle módulo tienen que ser exactamente igual.
Sólo quiero añadir un punto que será más fácil averiguar dónde está el error mediante la construcción de la gradle desde el terminal con la línea de comandos ./gradlew build
. Proporcionará información más útil que puede seguir para resolver su problema.