Jetpack Compose release version: 1.0.0-alpha06 Android Studio Build: 4.2 1Canery 15
my Activity
class MainActivityA : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
Text(text = "hello", modifier = Modifier.padding(12.dp))
}
}
THe above when run compiles this error:
java.lang.NoSuchMethodError: No static method setContent$default(Landroidx/activity/ComponentActivity;Landroidx/compose/runtime/Recomposer;Lkotlin/jvm/functions/Function0;ILjava/lang/Object;)Landroidx/compose/runtime/Composition; in class Landroidx/compose/ui/platform/WrapperKt; or its super classes (declaration of 'androidx.compose.ui.platform.WrapperKt' appears in /data/app/com.jonathan-_j03c44RbBo00Hn7DeOjeA==/base.apk)
some of my gradle settings
def jetpack_compose = "1.0.0-alpha06"
kotlinOptions {
jvmTarget = '1.8'
useIR = true
}
composeOptions {
kotlinCompilerVersion '1.4.0'
kotlinCompilerExtensionVersion "$jetpack_compose"
}
//JetPack Compose stuff
implementation "androidx.compose.ui:ui:$jetpack_compose"
// Tooling support (Previews, etc.)
implementation "androidx.ui:ui-tooling:$jetpack_compose"
// Foundation (Border, Background, Box, Image, Scroll, shapes, animations, etc.)
implementation "androidx.compose.foundation:foundation:$jetpack_compose"
// Material Design
implementation "androidx.compose.material:material:$jetpack_compose"
// Material design icons
implementation "androidx.compose.material:material-icons-core:$jetpack_compose"
implementation "androidx.compose.material:material-icons-extended:$jetpack_compose"
// Integration with observables
implementation "androidx.compose.runtime:runtime-livedata:$jetpack_compose"
implementation "androidx.compose.runtime:runtime-rxjava2:$jetpack_compose"
Top level build script
/ Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
ext.kotlin_version = "1.4.10"
repositories {
google()
jcenter()
}
dependencies {
classpath "com.android.tools.build:gradle:4.2.0-alpha15"
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
google()
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
I ran into the same issue. It worked for me after adding the following line in the app Gradle file
buildFeatures {
compose true
}
I had to remove androidx.navigation:navigation-compose dependency as well, that was the issue for me.
If you are in a multi module setup make sure you have this configuration added in your module gradle file insided the android block where you have compose dependencies.
the below is code syntax for KTS but it should be easily translatable in groovy too
buildFeatures {
compose = true
}
composeOptions {
kotlinCompilerExtensionVersion = "$Version_Number"
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With