Я пытаюсь внедрить пользовательский плагин Gradle для моего приложения модуля в проекте многоплатформы Kotlin, но я продолжаю столкнуться с этой ошибкой, когда я применяю свой собственный плагин и проект синхронизации.
Ошибка говорит, что для инициализации цели в модуле приложения, но я уже инициировал.
> Configure project :app
mmd is Coming
com.android.application
e: Please initialize at least one Kotlin target in 'app (:app)'.
Read more https://kotl.in/set-up-targets
w: The following Kotlin source sets were configured but not added to any Kotlin compilation:
* commonMain
* commonTest
You can add a source set to a target's compilation by connecting it with the compilation's default source set using 'dependsOn'.
See https://kotl.in/connecting-source-sets
w: Missing 'androidTarget()' Kotlin target in multiplatform project 'app (:app)'.
The Android Gradle plugin was applied without creating a corresponding 'android()' Kotlin Target:
plugins {
id("com.android.application")
kotlin("multiplatform")
}
kotlin {
androidTarget() // \ com.android.build.api.dsl.ApplicationExtension
* Try:
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
> Get more help at https://help.gradle.org.
* Exception is:
java.lang.NoClassDefFoundError: com/android/build/api/dsl/ApplicationExtension
at ApplicationGradlePlugin.apply(ApplicationGradlePlugin.kt:24)
...
Caused by: java.lang.ClassNotFoundException: com.android.build.api.dsl.ApplicationExtension
at org.gradle.internal.classloader.VisitableURLClassLoader$InstrumentingVisitableURLClassLoader.findClass(VisitableURLClassLoader.java:187)
... 215 more
CONFIGURE FAILED in 6s
Я пытаюсь внедрить пользовательский плагин Gradle для моего приложения модуля в проекте многоплатформы Kotlin, но я продолжаю столкнуться с этой ошибкой, когда я применяю свой собственный плагин и проект синхронизации. Ошибка говорит, что для инициализации цели в модуле приложения, но я уже инициировал.[code]> Configure project :app mmd is Coming com.android.application e: Please initialize at least one Kotlin target in 'app (:app)'. Read more https://kotl.in/set-up-targets
w: The following Kotlin source sets were configured but not added to any Kotlin compilation: * commonMain * commonTest You can add a source set to a target's compilation by connecting it with the compilation's default source set using 'dependsOn'. See https://kotl.in/connecting-source-sets
w: Missing 'androidTarget()' Kotlin target in multiplatform project 'app (:app)'. The Android Gradle plugin was applied without creating a corresponding 'android()' Kotlin Target:
> Run with --info or --debug option to get more log output. > Run with --scan to get full insights. > Get more help at https://help.gradle.org.
* Exception is: java.lang.NoClassDefFoundError: com/android/build/api/dsl/ApplicationExtension at ApplicationGradlePlugin.apply(ApplicationGradlePlugin.kt:24) ... Caused by: java.lang.ClassNotFoundException: com.android.build.api.dsl.ApplicationExtension at org.gradle.internal.classloader.VisitableURLClassLoader$InstrumentingVisitableURLClassLoader.findClass(VisitableURLClassLoader.java:187) ... 215 more
CONFIGURE FAILED in 6s [/code] [b] мой пользовательский плагин в Buildsrc: [/b] [code]class ApplicationGradlePlugin : Plugin { override fun apply(target: Project) { with(target) { val libs = extensions.getByType().named("libs")
println("mmd is Coming") println(libs.findPlugin("androidApplication").get().get().pluginId) pluginManager.apply(libs.findPlugin("kotlinMultiplatform").get().get().pluginId)
println("mmd done his job..") } } } < /code> build.gradle.kts Файл в модуле приложения: < /p> import org.jetbrains.compose.desktop.application.dsl.TargetFormat
plugins { alias(libs.plugins.kotlinMultiplatform) alias(libs.plugins.composeMultiplatform) alias(libs.plugins.composeCompiler) alias(libs.plugins.kotlin.serialization) alias(libs.plugins.androidApplication) id("com.sample.myproject.application-plugin")// --> this is my custom plugin }
defaultConfig { applicationId = "com.sample.myproject" // other configurations } < /code> Я опустошил свой плагин и добавлял конфигурации шаг за шагом и синхронизировался каждый раз, когда я добавляю это: < /p> extensions.getByType(ApplicationExtension::class.java) < /code> Это дает мне ошибку. < /p> Я инициировал цели в своих плагинах, как это: < /p> extensions.getByType(KotlinMultiplatformExtension::class).apply { androidTarget() jvm("desktop") } [/code] Но это не имело никакого значения.
Я пытаюсь реализовать собственный плагин Gradle для своего модуля приложения в многоплатформенном проекте Kotlin, но постоянно сталкиваюсь с этой ошибкой, когда применяю свой собственный плагин и проект синхронизации.
Ошибка говорит о необходимости...
Я пытаюсь реализовать собственный плагин Gradle для своего модуля приложения в многоплатформенном проекте Kotlin, но постоянно сталкиваюсь с этой ошибкой, когда применяю свой собственный плагин и проект синхронизации.
Ошибка говорит о необходимости...
Недавно я обновил SDK Flutter до версии 3.19. После этого эта ошибка начала появляться всякий раз, когда я запускал свое приложение Flutter.
введите здесь описание изображения
Затем я перешел по ссылке, чтобы перенести плагины Gradle. Теперь я...
Я только что обновился до Kotlin 2.1.20. После очистки бесчисленных ошибок сборки я предупреждаю, что я получаю в каждом модуле в своем приложении, в котором говорится: