Status Update
Comments
pa...@google.com <pa...@google.com>
da...@google.com <da...@google.com> #2
Which file should I open in the Yelo! project to see the unresolved binding class?
da...@google.com <da...@google.com> #3
Nevermind, it was pretty straightforward.
build.gradle has this code:
sourceSets {
main {
file('src/main/res-new')
.listFiles()
.each { res.srcDirs += it.path }
}
}
There's also this file: Yelo/app/src/main/res-new/oye/layout/activity_main_2.xml
However, in Yelo/app/src/main/java/io/yelo/MainActivity.kt
, "ActivityMain2Binding" is not resolving.
da...@google.com <da...@google.com> #4
Heads up, it actually looks like this is working?
If you look at your MainActivity class, you'll see that it's importing the Impl class, which is the wrong one:
package io.yelo
...
--> import io.yelo.databinding.ActivityMain2BindingImpl <----
...
class MainActivity : AppCompatActivity() {
...
ActivityMain2Binding
}
If I delete that import line and retype "ActivityMain2Binding", it works.
Can you try that locally?
da...@google.com <da...@google.com> #5
Oh wait, hold on, there is something I need to check in first... Sorry, this one's on me.
I'll update this bug when I know which version of Studio a fix will be ready in.
da...@google.com <da...@google.com> #6
This fix should make it into the next release of 4.0 Canary. Thank you so much for the sample project!
ro...@gmail.com <ro...@gmail.com> #7
ro...@gmail.com <ro...@gmail.com> #8
ol...@gmail.com <ol...@gmail.com> #9
sn...@gmail.com <sn...@gmail.com> #10
da...@google.com <da...@google.com> #11
Yes, it should be fixed in the 4.0 beta. Are you not seeing it working there?
sn...@gmail.com <sn...@gmail.com> #12
ro...@gmail.com <ro...@gmail.com> #13
da...@google.com <da...@google.com> #14
No, it missed the cutoff for 3.6. If our team decides to put out a 3.6.1 hotfix patch and people are reporting this fixed in 4.0, I can look into getting the fix backported to there, but no promises.
da...@google.com <da...@google.com> #15
^ Just a quick note -- an emergency 3.6.1 hotfix patch went out yesterday. This fix is not in it. However, I am taking steps to get the code ready for a followup 3.6.??? hotfix patch, if we release one. (<--- Not including the exact patch version because who knows if there will be more tiny emergency patches before we release a patch that I could safely be a part of...)
ro...@gmail.com <ro...@gmail.com> #16
Below is the stacktrace for the crash, copied from terminal:
com.google.common.util.concurrent.ExecutionError: java.lang.AssertionError
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2049)
at com.google.common.cache.LocalCache.get(LocalCache.java:3953)
at com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4873)
at com.android.utils.concurrency.CacheUtils.getAndUnwrap(CacheUtils.kt:33)
at com.android.tools.idea.res.ResourceFolderRegistry.get(ResourceFolderRegistry.java:97)
at com.android.tools.idea.res.ResourceFolderRegistry.lambda$get$0(ResourceFolderRegistry.java:88)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:821)
at com.intellij.openapi.application.ReadAction.compute(ReadAction.java:71)
at com.android.tools.idea.res.ResourceFolderRegistry.get(ResourceFolderRegistry.java:88)
at com.android.tools.idea.res.ModuleResourceRepository.addRepositoriesInReverseOverlayOrder(ModuleResourceRepository.java:145)
at com.android.tools.idea.res.ModuleResourceRepository.forMainResources(ModuleResourceRepository.java:88)
at com.android.tools.idea.res.ResourceRepositoryManager.lambda$getModuleResources$2(ResourceRepositoryManager.java:434)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:807)
at com.android.tools.idea.res.ResourceRepositoryManager.getModuleResources(ResourceRepositoryManager.java:428)
at com.android.tools.idea.res.ResourceRepositoryManager.getModuleResources(ResourceRepositoryManager.java:253)
at com.android.tools.idea.res.ProjectResourceRepository.computeRepositories(ProjectResourceRepository.java:48)
at com.android.tools.idea.res.ProjectResourceRepository.create(ProjectResourceRepository.java:42)
at com.android.tools.idea.res.ResourceRepositoryManager.lambda$getProjectResources$1(ResourceRepositoryManager.java:388)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:807)
at com.android.tools.idea.res.ResourceRepositoryManager.getProjectResources(ResourceRepositoryManager.java:382)
at com.android.tools.idea.res.ResourceRepositoryManager.getProjectResources(ResourceRepositoryManager.java:223)
at com.android.tools.idea.res.AppResourceRepository.computeLocalRepositories(AppResourceRepository.java:68)
at com.android.tools.idea.res.AppResourceRepository.create(AppResourceRepository.java:47)
at com.android.tools.idea.res.ResourceRepositoryManager.lambda$getAppResources$0(ResourceRepositoryManager.java:340)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:807)
at com.android.tools.idea.res.ResourceRepositoryManager.getAppResources(ResourceRepositoryManager.java:334)
at com.android.tools.idea.res.ResourceRepositoryManager.getAppResources(ResourceRepositoryManager.java:193)
at com.android.tools.idea.res.ResourceRepositoryManager.getAppResources(ResourceRepositoryManager.java:179)
at com.android.tools.idea.folding.ResourceFoldingBuilder.getAppResources(ResourceFoldingBuilder.java:233)
at com.android.tools.idea.folding.ResourceFoldingBuilder.createdInlinedResource(ResourceFoldingBuilder.java:239)
at com.android.tools.idea.folding.ResourceFoldingBuilder.findXmlValueReference(ResourceFoldingBuilder.java:150)
at com.android.tools.idea.folding.ResourceFoldingBuilder.access$100(ResourceFoldingBuilder.java:47)
at com.android.tools.idea.folding.ResourceFoldingBuilder$2.visitXmlAttributeValue(ResourceFoldingBuilder.java:106)
at com.intellij.psi.impl.source.xml.XmlAttributeValueImpl.accept(XmlAttributeValueImpl.java:59)
at com.intellij.psi.impl.source.tree.CompositePsiElement.acceptChildren(CompositePsiElement.java:81)
at com.intellij.psi.XmlRecursiveElementVisitor.visitElement(XmlRecursiveElementVisitor.java:37)
at com.intellij.psi.XmlElementVisitor.visitXmlElement(XmlElementVisitor.java:22)
at com.intellij.psi.XmlElementVisitor.visitXmlAttribute(XmlElementVisitor.java:30)
at com.intellij.psi.impl.source.xml.XmlAttributeImpl.accept(XmlAttributeImpl.java:136)
at com.intellij.psi.impl.source.tree.CompositePsiElement.acceptChildren(CompositePsiElement.java:81)
at com.intellij.psi.XmlRecursiveElementVisitor.visitElement(XmlRecursiveElementVisitor.java:37)
at com.intellij.psi.XmlElementVisitor.visitXmlElement(XmlElementVisitor.java:22)
at com.intellij.psi.XmlElementVisitor.visitXmlTag(XmlElementVisitor.java:54)
at com.intellij.psi.impl.source.xml.XmlTagImpl.accept(XmlTagImpl.java:310)
at com.intellij.psi.impl.source.tree.CompositePsiElement.acceptChildren(CompositePsiElement.java:81)
at com.intellij.psi.XmlRecursiveElementVisitor.visitElement(XmlRecursiveElementVisitor.java:37)
at com.intellij.psi.XmlElementVisitor.visitXmlElement(XmlElementVisitor.java:22)
at com.intellij.psi.XmlElementVisitor.visitXmlTag(XmlElementVisitor.java:54)
at com.intellij.psi.impl.source.xml.XmlTagImpl.accept(XmlTagImpl.java:310)
at com.intellij.psi.impl.source.tree.CompositePsiElement.acceptChildren(CompositePsiElement.java:81)
at com.intellij.psi.XmlRecursiveElementVisitor.visitElement(XmlRecursiveElementVisitor.java:37)
at com.intellij.psi.XmlElementVisitor.visitXmlElement(XmlElementVisitor.java:22)
at com.intellij.psi.XmlElementVisitor.visitXmlTag(XmlElementVisitor.java:54)
at com.intellij.psi.impl.source.xml.XmlTagImpl.accept(XmlTagImpl.java:310)
at com.intellij.psi.impl.source.tree.CompositePsiElement.acceptChildren(CompositePsiElement.java:81)
at com.intellij.psi.XmlRecursiveElementVisitor.visitElement(XmlRecursiveElementVisitor.java:37)
at com.intellij.psi.XmlElementVisitor.visitXmlElement(XmlElementVisitor.java:22)
at com.intellij.psi.XmlElementVisitor.visitXmlDocument(XmlElementVisitor.java:42)
at com.intellij.psi.impl.source.xml.XmlDocumentImpl.accept(XmlDocumentImpl.java:98)
at com.intellij.psi.impl.source.tree.SharedImplUtil.acceptChildren(SharedImplUtil.java:200)
at com.intellij.psi.impl.source.PsiFileImpl.acceptChildren(PsiFileImpl.java:733)
at com.intellij.psi.XmlRecursiveElementVisitor.visitElement(XmlRecursiveElementVisitor.java:37)
at com.intellij.psi.PsiElementVisitor.visitFile(PsiElementVisitor.java:34)
at com.intellij.psi.XmlRecursiveElementVisitor.visitFile(XmlRecursiveElementVisitor.java:55)
at com.intellij.psi.XmlElementVisitor.visitXmlFile(XmlElementVisitor.java:26)
at com.intellij.psi.impl.source.xml.XmlFileImpl.accept(XmlFileImpl.java:71)
at com.android.tools.idea.folding.ResourceFoldingBuilder.buildFoldRegions(ResourceFoldingBuilder.java:103)
at com.intellij.lang.folding.LanguageFolding.buildFoldingDescriptorsNoPlaceholderCaching(LanguageFolding.java:94)
at com.intellij.lang.folding.CompositeFoldingBuilder.buildFoldRegions(CompositeFoldingBuilder.java:40)
at com.intellij.lang.folding.LanguageFolding.buildFoldingDescriptorsNoPlaceholderCaching(LanguageFolding.java:94)
at com.intellij.lang.folding.LanguageFolding.buildFoldingDescriptors(LanguageFolding.java:76)
at com.intellij.codeInsight.folding.impl.FoldingUpdate.getFoldingsFor(FoldingUpdate.java:238)
at com.intellij.codeInsight.folding.impl.FoldingUpdate.getFoldingsFor(FoldingUpdate.java:218)
at com.intellij.codeInsight.folding.impl.FoldingUpdate.getUpdateResult(FoldingUpdate.java:83)
at com.intellij.codeInsight.folding.impl.FoldingUpdate.updateFoldRegions(FoldingUpdate.java:67)
at com.intellij.codeInsight.folding.impl.CodeFoldingManagerImpl.updateFoldRegions(CodeFoldingManagerImpl.java:216)
at com.intellij.codeInsight.folding.impl.CodeFoldingManagerImpl.updateFoldRegionsAsync(CodeFoldingManagerImpl.java:202)
at com.intellij.codeInsight.daemon.impl.CodeFoldingPass.doCollectInformation(CodeFoldingPass.java:42)
at com.intellij.codeHighlighting.TextEditorHighlightingPass.collectInformation(TextEditorHighlightingPass.java:55)
at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$null$1(PassExecutorService.java:429)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1000)
at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$2(PassExecutorService.java:422)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:585)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:531)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:59)
at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.doRun(PassExecutorService.java:421)
at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$run$0(PassExecutorService.java:397)
at com.intellij.openapi.application.impl.ReadMostlyRWLock.executeByImpatientReader(ReadMostlyRWLock.java:167)
at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:157)
at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.run(PassExecutorService.java:395)
at com.intellij.concurrency.JobLauncherImpl$VoidForkJoinTask$1.exec(JobLauncherImpl.java:161)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
Caused by: java.lang.AssertionError
at com.android.tools.idea.resources.base.RepositoryLoader.parseValueResourceFile(RepositoryLoader.java:477)
at com.android.tools.idea.res.ResourceFolderRepository$Loader.loadResourceFile(ResourceFolderRepository.java:2112)
at com.android.tools.idea.res.ResourceFolderRepository$Loader.scanResFolder(ResourceFolderRepository.java:2067)
at com.android.tools.idea.res.ResourceFolderRepository$Loader.load(ResourceFolderRepository.java:1977)
at com.android.tools.idea.res.ResourceFolderRepository.<init>(ResourceFolderRepository.java:264)
at com.android.tools.idea.res.ResourceFolderRepository.create(ResourceFolderRepository.java:240)
at com.android.tools.idea.res.ResourceFolderRegistry.createRepository(ResourceFolderRegistry.java:113)
at com.android.tools.idea.res.ResourceFolderRegistry.lambda$get$1(ResourceFolderRegistry.java:97)
at com.android.utils.concurrency.CacheUtils$sam$java_util_concurrent_Callable$0.call(CacheUtils.kt)
at com.google.common.cache.LocalCache$LocalManualCache$1.load(LocalCache.java:4878)
at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3529)
at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2278)
at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2155)
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2045)
... 94 more
ro...@gmail.com <ro...@gmail.com> #17
da...@google.com <da...@google.com> #18
da...@google.com <da...@google.com> #19
Hey all! The 3.6.2 patch is out now and it should fix this issue. Thanks for your patience!
Description
Studio Build: Android Studio 4.0 Canary 8
Version of Gradle Plugin: 4.0.0-alpha08
Version of Gradle:6.1-rc-1
Version of Java: 8
OS: N/A
Steps to Reproduce:
1. Create a project with Data binding enabled
2. Create a resource sourceSet with any name
3. Now add a layout in that sourceSet
4. Try to add the Binding class for that layout
5. Studio says unresolved reference.
Attaching a sample for reproduction
3.