2017-08-11 32 views
10

Po migracji do Android Studio 3.0-beta1, używam do Gradle synchronizacji nie powiodło się błąd, który nie dostarcza najwięcej informacji. W konsoli gradle nie ma komunikatu o błędzie. Musiałam iść do pliku idea.log aby uzyskać następujący ślad stosu:Android Studio 3.0 Gradle Synchronizacja nie powiodła się: java.lang.AssertionError (w UnresolvedDependenciesReporter)

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) 

I po migration documentation ale nadal nie można uzyskać synchronizacji uruchomić pomyślnie. Nie jestem pewien, czy jest to problem w Android Studio 3.0-beta1, czy w konfiguracji mojego projektu. Prowadziłem inne projekty i tworzyłem nowe z Androidem Studio 3.0-alphaX, tak pochylone w stronę mojego projektu.

Odpowiedz

9

Problem był nie wybrać domyślne brakuje budować typy. Mój projekt ma 2 moduły z następującymi zbudować konfiguracji typów:

dane/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 { ... } 
    } 
} 

Z najnowszą wtyczkę Android Gradle, wasze typy kompilacji musi pasować z biblioteki do modułów aplikacji. Mój problem polegał na tym, że mój moduł danych nie definiował typów budowania dev, qa i rc. Postanowiłem to za pomocą buildTypeMatching w moim modułu aplikacji:

app/build.gradle

apply plugin: 'com.android.application' 
android { 
    ... 

    buildTypeMatching 'dev', 'debug' 
    buildTypeMatching 'qa', 'debug' 
    buildTypeMatching 'rc', 'release' 

    buildTypes { 
     debug { ... } 
     dev { ... } 
     qa { ... } 
     rc { ... } 
     release { ... } 
    } 
} 

Można również dodać brakujące warianty modułów bibliotecznych, jak również.

natknąłem się na ten bug report która wydawała się być moim sam problem. Wygląda na to, że w komunikatach o błędach jest błąd, który, mam nadzieję, zostanie naprawiony.

0

spróbować zrobić

  • Build -> Clean projekt
0

Ran do podobnego problemu, ale dla mnie było to, bo zapomniał zainicjować moje git submodules co spowodowało w jednym module android nie beeing tam rzuca ten sam błąd ...

0

Ten błąd się do mnie. Okazuje się, że jest to ten sam powód, dla którego kyhule, buildTypes w innym module gradle muszą dokładnie pasować.

Po prostu chcesz dodać punkt, który będzie łatwiej dowiedzieć się, gdzie jest błąd, budując gradle z terminalu z linii poleceń ./gradlew build. Dostarczy to więcej przydatnych informacji, które możesz zastosować, aby rozwiązać swój problem.

8

Po prostu wyłącz tryb offline. To działa dla mnie.

+0

Dzięki!Zapomniałem, że podczas lotu, to doprowadzało mnie do szału – FrankMonza

0

Kiedy mam podobny problem, okazało się, że muszę użyć nowszej wersji Androida Studio. Ten błąd wystąpił podczas używania Androida Studio 3 Canary 2, ale potem użyłem najnowszej wersji beta i rozwiązało to mój problem.

3

W moim przypadku ponowne uruchomienie Androida Studio rozwiązało mój problem

+0

restart zawsze działa: D – Krrishnaaaa