https://kotlinlang.org logo
#compose
Title
# compose
d

Daniel Rampelt

07/23/2020, 2:58 PM
I'm having some trouble getting previews to work with the latest versions, last time I tried compose was with dev05 and I didn't have any issues. Project builds and runs fine on a device, it's just previews not working. I'm using AS 4.2 Canary 5 and compose dev15, getting this error in the preview pane (I'll post the full stack trace in a thread):
The following classes could not be instantiated: - androidx.ui.tooling.preview.ComposeViewAdapter
👀 2
Copy code
java.lang.NoSuchMethodError: kotlin.jvm.internal.FunctionReferenceImpl.<init>(ILjava/lang/Object;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;I)V
	at androidx.compose.FrameManager$writeObserver$1.<init>(FrameManager.kt)
	at androidx.compose.FrameManager.<clinit>(FrameManager.kt:176)
	at androidx.ui.core.WrapperKt.setContent(Wrapper.kt:180)
	at androidx.ui.core.WrapperKt.setContent$default(Wrapper.kt:175)
	at androidx.ui.tooling.preview.ComposeViewAdapter.init$ui_tooling_release(ComposeViewAdapter.kt:297)
	at androidx.ui.tooling.preview.ComposeViewAdapter.init(ComposeViewAdapter.kt:366)
	at androidx.ui.tooling.preview.ComposeViewAdapter.<init>(ComposeViewAdapter.kt:149)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at org.jetbrains.android.uipreview.ViewLoader.createNewInstance(ViewLoader.java:399)
	at org.jetbrains.android.uipreview.ViewLoader.loadClass(ViewLoader.java:189)
	at org.jetbrains.android.uipreview.ViewLoader.loadView(ViewLoader.java:147)
	at com.android.tools.idea.rendering.LayoutlibCallbackImpl.loadView(LayoutlibCallbackImpl.java:303)
	at android.view.BridgeInflater.loadCustomView(BridgeInflater.java:417)
	at android.view.BridgeInflater.loadCustomView(BridgeInflater.java:428)
	at android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:332)
	at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:959)
	at android.view.LayoutInflater.inflate(LayoutInflater.java:657)
	at android.view.LayoutInflater.inflate(LayoutInflater.java:499)
	at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:347)
	at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:435)
	at com.android.tools.idea.layoutlib.LayoutLibrary.createSession(LayoutLibrary.java:141)
	at com.android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.java:705)
	at com.android.tools.idea.rendering.RenderTask.lambda$inflate$6(RenderTask.java:861)
	at com.android.tools.idea.rendering.RenderExecutor$runAsyncActionWithTimeout$2.run(RenderExecutor.kt:170)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)
m

Mohamed Elfiky

07/23/2020, 4:38 PM
same here
i

Ivan Feliciano

07/26/2020, 5:14 AM
Similar thing here:
Copy code
java.lang.NoClassDefFoundError: Could not initialize class androidx.compose.FrameManager
	at androidx.ui.core.WrapperKt.setContent(Wrapper.kt:180)
	at androidx.ui.core.WrapperKt.setContent$default(Wrapper.kt:175)
	at androidx.ui.tooling.preview.ComposeViewAdapter.init$ui_tooling_release(ComposeViewAdapter.kt:297)
	at androidx.ui.tooling.preview.ComposeViewAdapter.init(ComposeViewAdapter.kt:366)
	at androidx.ui.tooling.preview.ComposeViewAdapter.<init>(ComposeViewAdapter.kt:149)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at org.jetbrains.android.uipreview.ViewLoader.createNewInstance(ViewLoader.java:399)
	at org.jetbrains.android.uipreview.ViewLoader.loadClass(ViewLoader.java:189)
	at org.jetbrains.android.uipreview.ViewLoader.loadView(ViewLoader.java:147)
	at com.android.tools.idea.rendering.LayoutlibCallbackImpl.loadView(LayoutlibCallbackImpl.java:303)
	at android.view.BridgeInflater.loadCustomView(BridgeInflater.java:417)
	at android.view.BridgeInflater.loadCustomView(BridgeInflater.java:428)
	at android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:332)
	at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:959)
	at android.view.LayoutInflater.inflate(LayoutInflater.java:657)
	at android.view.LayoutInflater.inflate(LayoutInflater.java:499)
	at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:347)
	at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:435)
	at com.android.tools.idea.layoutlib.LayoutLibrary.createSession(LayoutLibrary.java:141)
	at com.android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.java:705)
	at com.android.tools.idea.rendering.RenderTask.lambda$inflate$6(RenderTask.java:861)
	at com.android.tools.idea.rendering.RenderExecutor$runAsyncActionWithTimeout$2.run(RenderExecutor.kt:170)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)
Copy code
Build: AI-201.7846.76.42.6682321, 202007151459, 

AI-201.7846.76.42.6682321, JRE 1.8.0_242-release-1644-b01x64 JetBrains s.r.o, OS Windows 10(amd64) v10.0 , screens 1920x1080

AS: 4.2 Canary 5; Kotlin plugin: 1.4-M3-release-Studio4.1-1; Android Gradle Plugin: 4.2.0-alpha05; Gradle: 6.5; NDK: from local.properties: (not specified), latest from SDK: (not found); LLDB: pinned revision 3.1 not found, latest from SDK: (package not found); CMake: from local.properties: (not specified), latest from SDK: (not found), from PATH: (not found)
y

Yashovardhan

08/03/2020, 5:11 PM
Is there a fix by any chance? I'm still getting it with Android studio 4.2 Canary 7
j

Julius Marozas

08/03/2020, 5:38 PM
Have you tried upgrading to Kotlin 1.4.0-rc?
y

Yashovardhan

08/03/2020, 5:43 PM
Yes using that already
If I run the preview on my device, it's working fine but nothing shows up on the preview in Android Studio except this error on the side
b

Brett Best

08/03/2020, 10:08 PM
I’ve just started getting this as well, not sure what’s changed to break it now on me 😕
d

Daniel Rampelt

08/04/2020, 1:56 PM
I have it working now on Canary 6 but it's broken again for me on Canary 7 so I've been sticking to 6. I thought I saw somewhere that Canary 8 would resolve the issue.
2 Views