How can I create an Android Library (non-CMP) that...
# compose-android
a
How can I create an Android Library (non-CMP) that exposes
@Composable
functions? When i try to consume any sort
@Composable
function in an Android app (non-CMP), I always get
java.lang.NoSuchMethodError
Logs in the thread
Function:
Copy code
import androidx.compose.runtime.Composable

@Composable
fun aComposable() {

}
Stacktrace from App: FATAL EXCEPTION: main Process: org.example.myapplication, PID: 18711 java.lang.NoSuchMethodError: No static method aComposable(Landroidx/compose/runtime/Composer;I)V in class LAndroidLibKt; or its super classes (declaration of 'AndroidLibKt' appears in /data/data/org.example.myapplication/code_cache/.overlay/base.apk/classes6.dex) at org.example.myapplication.MainActivityKt.App(MainActivity.kt:39) at org.example.myapplication.ComposableSingletons$MainActivityKt.lambda__990599614$lambda$0(MainActivity.kt:32) at org.example.myapplication.ComposableSingletons$MainActivityKt.$r8$lambda$Kv3rhpBrcV2AShv8Xgc9Wr_wa84(Unknown Source:0) at org.example.myapplication.ComposableSingletons$MainActivityKt$$ExternalSyntheticLambda0.invoke(D8$$SyntheticClass:0) at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.kt:121) at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.kt:51)
Found it. I was missing the compose compiler plugin in the library ☠️
2
y
Do you have the compose plugin installed in both the library and the calling app?
Just saw last reply