Hey everyone, I’m trying to create a Gradle Conven...
# multiplatform
v
Hey everyone, I’m trying to create a Gradle Convention Plugin for my compose multiplatform Project but how would i access these dependencies here. Does anyone know?
Copy code
class ComposeMultiplatformPlugin : Plugin<Project> {
    override fun apply(target: Project) = with(target) {
        with(pluginManager){
            apply(libs.findPlugin("composeMultiplatform").get().get().pluginId)
        }

        extensions.configure<KotlinMultiplatformExtension> {
            sourceSets.apply {
                commonMain {
                    dependencies { //how to access these
//                        implementation(compose.runtime)
//                        implementation(compose.foundation)
//                        implementation(compose.material3)
//                        implementation(compose.materialIconsExtended)
//                        implementation(compose.material)
                    }
                }
            }
        }
    }
}
m
They are declared inside
ComposePlugin.Dependencies
which can be accessed through
ComposeExtension
like this:
Copy code
val composeExtension = extensions.getByType<ComposeExtension>()

...

dependencies {
     implementation(composeExtension.dependencies.runtime)
// ...
}
v
@MR3Y cannot access ComposeExtension Getting this
Unresolved reference: ComposeExtension
Adding this fixed it
Copy code
compose-gradlePlugin = { module = "org.jetbrains.compose:org.jetbrains.compose.gradle.plugin", version.ref = "compose" }