Android Studio - missing essential plugins

Answered

I'm encountering an issue while trying to run and build plugin template for Android Studio Canary.
My target Android Studio version is 2024.3.1.1, and I am using version 243.21565.23 of the Android plugin (verified from the [Android Studio Releases List]).
Here's my build.gradle.kts

plugins {
    id("java") 
    id("org.jetbrains.kotlin.jvm") version "2.1.0"
    id("org.jetbrains.intellij.platform") version "2.2.1"
    id("org.jetbrains.changelog") version "2.2.1"
    id("org.jetbrains.qodana") version "2024.3.4"
    id("org.jetbrains.kotlinx.kover") version "0.9.0"
}
.
.
dependencies {
    intellijPlatform {
        androidStudio("2024.3.1.1")
        plugin("org.jetbrains.android:243.21565.23")
        bundledPlugins("com.intellij.java")
        bundledPlugins("org.jetbrains.kotlin")
        pluginVerifier()
        zipSigner()
        testFramework(TestFrameworkType.Platform)
    }
}

Here's my plugin.xml

<idea-plugin>
    <id>com.github.emertozd.meerkat</id>
    <name>meerkat</name>
    <vendor>emertozd</vendor>

    <depends>org.jetbrains.android</depends>
    <depends>org.jetbrains.kotlin</depends>
    <depends>com.intellij.modules.java</depends>
    <depends>com.intellij.modules.androidstudio</depends>
</idea-plugin>

When I execute the runIde Gradle task, I get the following error:

2025-01-04 19:24:02,166 [    115]   WARN - #c.i.i.p.PluginManager - Problems found loading plugins:
 The Android (id=org.jetbrains.android, path=~/Projects/meerkat/build/idea-sandbox/AI-AI-243.21565.23.2431.12637205/plugins/android, version=243.21565.23) plugin Plugin 'Android' requires plugin 'org.jetbrains.idea.gradle.dsl' to be installed
 The Android SDK Upgrade Assistant (id=com.google.targetsdkversionassistant, path=~/.gradle/caches/8.9/transforms/739ba62aea2c100eaf93db5df7afa096/transformed/android-studio-2024.3.1.1-mac_arm/plugins/targetsdkversion-upgrade-assistant) plugin Plugin 'Android SDK Upgrade Assistant' requires plugin 'Android' to be enabled
 The Android Design Tools (id=com.android.tools.design, path=~/.gradle/caches/8.9/transforms/739ba62aea2c100eaf93db5df7afa096/transformed/android-studio-2024.3.1.1-mac_arm/plugins/design-tools) plugin Plugin 'Android Design Tools' requires plugin 'Android' to be enabled
 The meerkat (id=com.github.emertozd.meerkat, path=~/Projects/meerkat/build/idea-sandbox/AI-AI-243.21565.23.2431.12637205/plugins/meerkat, version=0.0.1) plugin Plugin 'meerkat' requires plugin 'Android' to be enabled
 The Google Cloud Tools For Android Studio (id=com.google.gct, path=~/.gradle/caches/8.9/transforms/739ba62aea2c100eaf93db5df7afa096/transformed/android-studio-2024.3.1.1-mac_arm/plugins/google-cloud-tools-as) plugin Plugin 'Google Cloud Tools For Android Studio' requires plugin 'Android' to be enabled
 The Jetpack Compose (id=androidx.compose.plugins.idea, path=~/.gradle/caches/8.9/transforms/739ba62aea2c100eaf93db5df7afa096/transformed/android-studio-2024.3.1.1-mac_arm/plugins/android-compose-ide-plugin) plugin Plugin 'Jetpack Compose' requires plugin 'Android' to be enabled
 The App Links Assistant (id=com.google.urlassistant, path=~/.gradle/caches/8.9/transforms/739ba62aea2c100eaf93db5df7afa096/transformed/android-studio-2024.3.1.1-mac_arm/plugins/url-assistant) plugin Plugin 'App Links Assistant' requires plugin 'Android' to be enabled
 The Test Recorder (id=com.google.gct.test.recorder, path=~/.gradle/caches/8.9/transforms/739ba62aea2c100eaf93db5df7afa096/transformed/android-studio-2024.3.1.1-mac_arm/plugins/test-recorder) plugin Plugin 'Test Recorder' requires plugin 'Android' to be enabled
 The Firebase Services (id=com.google.services.firebase, path=~/.gradle/caches/8.9/transforms/739ba62aea2c100eaf93db5df7afa096/transformed/android-studio-2024.3.1.1-mac_arm/plugins/firebase) plugin Plugin 'Firebase Services' requires plugin 'Android' to be enabled
 The Firebase Testing (id=com.google.gct.testing, path=~/.gradle/caches/8.9/transforms/739ba62aea2c100eaf93db5df7afa096/transformed/android-studio-2024.3.1.1-mac_arm/plugins/firebase-testing) plugin Plugin 'Firebase Testing' requires plugin 'Android' to be enabled
 The Git for App Insights (id=com.google.services.git4insights, path=~/.gradle/caches/8.9/transforms/739ba62aea2c100eaf93db5df7afa096/transformed/android-studio-2024.3.1.1-mac_arm/plugins/git4insights) plugin Plugin 'Git for App Insights' requires plugin 'Android' to be enabled
 The Android NDK Support (id=com.android.tools.ndk, path=~/.gradle/caches/8.9/transforms/739ba62aea2c100eaf93db5df7afa096/transformed/android-studio-2024.3.1.1-mac_arm/plugins/android-ndk) plugin Plugin 'Android NDK Support' requires plugin 'Android' to be enabled
 The Android APK Support (id=com.android.tools.apk, path=~/.gradle/caches/8.9/transforms/739ba62aea2c100eaf93db5df7afa096/transformed/android-studio-2024.3.1.1-mac_arm/plugins/android-apk) plugin Plugin 'Android APK Support' requires plugin 'Android' to be enabled
 The Device Streaming (id=com.google.gct.directaccess, path=~/.gradle/caches/8.9/transforms/739ba62aea2c100eaf93db5df7afa096/transformed/android-studio-2024.3.1.1-mac_arm/plugins/directaccess) plugin Plugin 'Device Streaming' requires plugin 'Android' to be enabled
 The Gemini (id=com.google.tools.ij.aiplugin, path=~/.gradle/caches/8.9/transforms/739ba62aea2c100eaf93db5df7afa096/transformed/android-studio-2024.3.1.1-mac_arm/plugins/gemini) plugin Plugin 'Gemini' requires plugin 'Android' to be enabled
2025-01-04 19:24:02,168 [    117]   WARN - #c.i.i.p.PluginManager - Android Studio (b/365493089, b/202048599): resetting the list of disabled plugins to recover from EssentialPluginMissingException

Additionally, when Android Studio attempts to open, the following error dialog appears:

com.intellij.ide.plugins.EssentialPluginMissingException: Missing essential plugins: com.android.tools.design, org.jetbrains.android
    at com.intellij.ide.plugins.PluginManagerCore.checkEssentialPluginsAreAvailable(PluginManagerCore.kt:598)
    at com.intellij.ide.plugins.PluginManagerCore.initializePlugins(PluginManagerCore.kt:671)
    at com.intellij.ide.plugins.PluginManagerCore$initializeAndSetPlugins$2.invokeSuspend(PluginManagerCore.kt:870)
    at com.intellij.ide.plugins.PluginManagerCore$initializeAndSetPlugins$2.invoke(PluginManagerCore.kt)
    at com.intellij.ide.plugins.PluginManagerCore$initializeAndSetPlugins$2.invoke(PluginManagerCore.kt)
    at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:62)
    at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:163)
    at kotlinx.coroutines.BuildersKt.withContext(Unknown Source)
    at com.intellij.platform.diagnostic.telemetry.impl.TracerKt.span(tracer.kt:56)
    at com.intellij.idea.Main$startApp$2$1$1.span(Main.kt:100)
    at com.intellij.diagnostic.CoroutineTracerShim.span$default(CoroutineTracerShim.kt:31)
    at com.intellij.ide.plugins.PluginManagerCore.initializeAndSetPlugins$intellij_platform_core_impl(PluginManagerCore.kt:868)
    at com.intellij.ide.plugins.PluginDescriptorLoader$scheduleLoading$pluginSetDeferred$1.invokeSuspend(PluginDescriptorLoader.kt:403)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
    at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:608)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:873)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:763)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:750)

I also tried deleting all disabled_plugins.txt files locally, but it didn't resolve the issue.

You can check the repository at https://github.com/emertozd/meerkat.

1
11 comments

Hello Yann, thanks for the reply.
Are you sure about that this is related with performancePlugin.jar issue?
Because when i change androidStudio("2024.3.1.1")to androidStudio("2024.2.2.13")it works successfully. However, when I look at https://plugins.jetbrains.com/docs/intellij/android-studio.html it shouldn't work at all since 2024.2.2.13 version is compatible with 242.23726.103 not 243.21565.23
Additionally, there is no mention of performancePlugin.jar in the error logs.
Thanks

0

I have the same problem.  I use macOS Sonoma 14.3 and IntelliJ IDEA Build #IC-243.22562.218, built on December 18, 2024. 

At first I used Gradle IntelliJ Plugin (1.x), and everything worked fine. Then I needed to support Ladybug Feature Drop. I switched to IntelliJ Platform Gradle Plugin (2.x)  according to this instruction: https://plugins.jetbrains.com/docs/intellij/android-studio.html#android-studio-releases-listing and I started having problems.

plugins {
    id("java")
    id("org.jetbrains.kotlin.jvm") version "1.9.25"
    id("org.jetbrains.intellij.platform") version "2.2.1"
}

group = "com.test.plugin"
version = "1.0-SNAPSHOT"

repositories {
    mavenCentral()
    intellijPlatform {
        defaultRepositories()
    }
}

dependencies {
    intellijPlatform {
        androidStudio("2024.2.2.13")
        plugin("org.jetbrains.android", "242.23726.103")
    }
}

tasks {
    // Set the JVM compatibility versions
    withType<JavaCompile> {
        sourceCompatibility = "17"
        targetCompatibility = "17"
    }
    withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile> {
        kotlinOptions.jvmTarget = "17"
    }

    patchPluginXml {
        sinceBuild.set("232")
        untilBuild.set("243.*")
    }

    signPlugin {
        certificateChain.set(System.getenv("CERTIFICATE_CHAIN"))
        privateKey.set(System.getenv("PRIVATE_KEY"))
        password.set(System.getenv("PRIVATE_KEY_PASSWORD"))
    }

    publishPlugin {
        token.set(System.getenv("PUBLISH_TOKEN"))
    }
}

I use these settings and when I launch I get an error:

13:48:23: Executing 'runIde'…

Reusing configuration cache.
> Task :checkKotlinGradlePluginConfigurationErrors
> Task :initializeIntellijPlatformPlugin
> Task :patchPluginXml UP-TO-DATE
> Task :generateManifest UP-TO-DATE
> Task :verifyPluginProjectConfiguration UP-TO-DATE
> Task :processResources UP-TO-DATE
> Task :compileKotlin UP-TO-DATE
> Task :compileJava NO-SOURCE
> Task :classes UP-TO-DATE
> Task :instrumentCode UP-TO-DATE
> Task :jar UP-TO-DATE
> Task :instrumentedJar UP-TO-DATE
> Task :composedJar UP-TO-DATE
> Task :prepareSandbox UP-TO-DATE

> Task :runIde
2025-01-20 13:48:27,620 [    111]   WARN - #c.i.i.p.PluginManager - Problems found loading plugins:
  The Android (id=org.jetbrains.android, path=~/IdeaProjects/CodeGenerator1/build/idea-sandbox/AI-AI-242.23726.103.2422.12816248/plugins/android, version=242.23726.103) plugin Plugin 'Android' requires plugin 'org.jetbrains.idea.gradle.dsl' to be installed
  The Android SDK Upgrade Assistant (id=com.google.targetsdkversionassistant, path=~/.gradle/caches/8.12/transforms/9913b80a39112301fb30f71e713f642c/transformed/android-studio-2024.2.2.13-mac_arm/plugins/targetsdkversion-upgrade-assistant) plugin Plugin 'Android SDK Upgrade Assistant' requires plugin 'Android' to be enabled
  The Android Design Tools (id=com.android.tools.design, path=~/.gradle/caches/8.12/transforms/9913b80a39112301fb30f71e713f642c/transformed/android-studio-2024.2.2.13-mac_arm/plugins/design-tools) plugin Plugin 'Android Design Tools' requires plugin 'Android' to be enabled
  The Google Cloud Tools For Android Studio (id=com.google.gct, path=~/.gradle/caches/8.12/transforms/9913b80a39112301fb30f71e713f642c/transformed/android-studio-2024.2.2.13-mac_arm/plugins/google-cloud-tools-as) plugin Plugin 'Google Cloud Tools For Android Studio' requires plugin 'Android' to be enabled
  The CodeGenerator (id=com.test.plugin.CodeGenerator, path=~/IdeaProjects/CodeGenerator1/build/idea-sandbox/AI-AI-242.23726.103.2422.12816248/plugins/CodeGenerator, version=1.0-SNAPSHOT) plugin Plugin 'CodeGenerator' requires plugin 'Android' to be enabled
  The Jetpack Compose (id=androidx.compose.plugins.idea, path=~/.gradle/caches/8.12/transforms/9913b80a39112301fb30f71e713f642c/transformed/android-studio-2024.2.2.13-mac_arm/plugins/android-compose-ide-plugin) plugin Plugin 'Jetpack Compose' requires plugin 'Android' to be enabled
  The App Links Assistant (id=com.google.urlassistant, path=~/.gradle/caches/8.12/transforms/9913b80a39112301fb30f71e713f642c/transformed/android-studio-2024.2.2.13-mac_arm/plugins/url-assistant) plugin Plugin 'App Links Assistant' requires plugin 'Android' to be enabled
  The Test Recorder (id=com.google.gct.test.recorder, path=~/.gradle/caches/8.12/transforms/9913b80a39112301fb30f71e713f642c/transformed/android-studio-2024.2.2.13-mac_arm/plugins/test-recorder) plugin Plugin 'Test Recorder' requires plugin 'Android' to be enabled
  The Firebase Services (id=com.google.services.firebase, path=~/.gradle/caches/8.12/transforms/9913b80a39112301fb30f71e713f642c/transformed/android-studio-2024.2.2.13-mac_arm/plugins/firebase) plugin Plugin 'Firebase Services' requires plugin 'Android' to be enabled
  The Firebase Testing (id=com.google.gct.testing, path=~/.gradle/caches/8.12/transforms/9913b80a39112301fb30f71e713f642c/transformed/android-studio-2024.2.2.13-mac_arm/plugins/firebase-testing) plugin Plugin 'Firebase Testing' requires plugin 'Android' to be enabled
  The Git for App Insights (id=com.google.services.git4insights, path=~/.gradle/caches/8.12/transforms/9913b80a39112301fb30f71e713f642c/transformed/android-studio-2024.2.2.13-mac_arm/plugins/git4insights) plugin Plugin 'Git for App Insights' requires plugin 'Android' to be enabled
  The Android NDK Support (id=com.android.tools.ndk, path=~/.gradle/caches/8.12/transforms/9913b80a39112301fb30f71e713f642c/transformed/android-studio-2024.2.2.13-mac_arm/plugins/android-ndk) plugin Plugin 'Android NDK Support' requires plugin 'Android' to be enabled
  The Android APK Support (id=com.android.tools.apk, path=~/.gradle/caches/8.12/transforms/9913b80a39112301fb30f71e713f642c/transformed/android-studio-2024.2.2.13-mac_arm/plugins/android-apk) plugin Plugin 'Android APK Support' requires plugin 'Android' to be enabled
  The Device Streaming (id=com.google.gct.directaccess, path=~/.gradle/caches/8.12/transforms/9913b80a39112301fb30f71e713f642c/transformed/android-studio-2024.2.2.13-mac_arm/plugins/directaccess) plugin Plugin 'Device Streaming' requires plugin 'Android' to be enabled
  The Gemini (id=com.google.tools.ij.aiplugin, path=~/.gradle/caches/8.12/transforms/9913b80a39112301fb30f71e713f642c/transformed/android-studio-2024.2.2.13-mac_arm/plugins/gemini) plugin Plugin 'Gemini' requires plugin 'Android' to be enabled
2025-01-20 13:48:27,621 [    112]   WARN - #c.i.i.p.PluginManager - Android Studio (b/365493089, b/202048599): resetting the list of disabled plugins to recover from EssentialPluginMissingException

**Start Failed**

Internal error

com.intellij.ide.plugins.EssentialPluginMissingException: Missing essential plugins: com.android.tools.design, org.jetbrains.android
	at com.intellij.ide.plugins.PluginManagerCore.checkEssentialPluginsAreAvailable(PluginManagerCore.kt:625)
	at com.intellij.ide.plugins.PluginManagerCore.initializePlugins(PluginManagerCore.kt:693)
	at com.intellij.ide.plugins.PluginManagerCore$initializeAndSetPlugins$2.invokeSuspend(PluginManagerCore.kt:910)
	at com.intellij.ide.plugins.PluginManagerCore$initializeAndSetPlugins$2.invoke(PluginManagerCore.kt)
	at com.intellij.ide.plugins.PluginManagerCore$initializeAndSetPlugins$2.invoke(PluginManagerCore.kt)
	at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:62)
	at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:163)
	at kotlinx.coroutines.BuildersKt.withContext(Unknown Source)
	at com.intellij.platform.diagnostic.telemetry.impl.TracerKt.span(tracer.kt:56)
	at com.intellij.idea.Main$startApp$2$1$1.span(Main.kt:90)
	at com.intellij.diagnostic.CoroutineTracerShim.span$default(CoroutineTracerShim.kt:31)
	at com.intellij.ide.plugins.PluginManagerCore.initializeAndSetPlugins$intellij_platform_core_impl(PluginManagerCore.kt:909)
	at com.intellij.ide.plugins.PluginDescriptorLoader$scheduleLoading$pluginSetDeferred$1.invokeSuspend(PluginDescriptorLoader.kt:385)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:608)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:873)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:763)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:750)

-----
JRE: 21.0.4+-12422083-b607.1 aarch64 (JetBrains s.r.o.)
/Users/user1/.gradle/caches/8.12/transforms/9913b80a39112301fb30f71e713f642c/transformed/android-studio-2024.2.2.13-mac_arm/jbr/Contents/Home

 

But if I change to plugin("org.jetbrains.android", "243.22562.218") (which does not match the table: https://plugins.jetbrains.com/docs/intellij/android-studio-releases-list.html#2024), AS works for me, but my plugin does not work:

2025-01-20 13:53:53,103 [  11083] SEVERE - #com.android.tools.idea.npw.module.ChooseModuleTypeWizard - 'void com.android.tools.idea.npw.module.ModuleModel.<init>(java.lang.String, java.lang.String, boolean, com.android.tools.idea.npw.model.ProjectModelData, com.android.tools.idea.projectsystem.NamedModuleTemplate, java.lang.String, com.google.wireless.android.sdk.stats.AndroidStudioEvent$TemplatesUsage$TemplateComponent$WizardUiContext)'
java.lang.NoSuchMethodError: 'void com.android.tools.idea.npw.module.ModuleModel.<init>(java.lang.String, java.lang.String, boolean, com.android.tools.idea.npw.model.ProjectModelData, com.android.tools.idea.projectsystem.NamedModuleTemplate, java.lang.String, com.google.wireless.android.sdk.stats.AndroidStudioEvent$TemplatesUsage$TemplateComponent$WizardUiContext)'
	at com.test.plugin.codegenerator.module.CodeModuleModel.<init>(CodeModuleModel.kt:27)
	at com.test.plugin.codegenerator.module.CodeModuleModel.<init>(CodeModuleModel.kt:18)
	at com.test.plugin.codegenerator.module.CodeModuleModel$Companion.fromExistingProject(CodeModuleModel.kt:85)
	at com.test.plugin.codegenerator.module.CodeModuleGalleryEntry.createStep(CodeModuleGalleryEntry.kt:30)
	at com.android.tools.idea.npw.module.ChooseModuleTypeWizard._init_$setNewModelWizard(ChooseModuleTypeWizard.kt:154)
	at com.android.tools.idea.observable.ListenerManager.lambda$listen$0(ListenerManager.java:87)
	at com.android.tools.idea.observable.AbstractObservableValue.notifyInvalidated(AbstractObservableValue.java:68)
	at com.android.tools.idea.observable.ui.SelectedListValueProperty.valueChanged(SelectedListValueProperty.java:40)
	at java.desktop/javax.swing.JList.fireSelectionValueChanged(Unknown Source)
	at java.desktop/javax.swing.JList$ListSelectionHandler.valueChanged(Unknown Source)
	at java.desktop/javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
	at java.desktop/javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
	at java.desktop/javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
	at java.desktop/javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source)
	at java.desktop/javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source)
	at java.desktop/javax.swing.DefaultListSelectionModel.setSelectionInterval(Unknown Source)
	at java.desktop/javax.swing.JList.setSelectionInterval(Unknown Source)
	at java.desktop/javax.swing.plaf.basic.BasicListUI$Handler.adjustSelection(Unknown Source)
	at java.desktop/javax.swing.plaf.basic.BasicListUI$Handler.mousePressed(Unknown Source)
	at java.desktop/java.awt.AWTEventMulticaster.mousePressed(Unknown Source)
	at java.desktop/java.awt.AWTEventMulticaster.mousePressed(Unknown Source)
	at java.desktop/java.awt.AWTEventMulticaster.mousePressed(Unknown Source)
	at java.desktop/java.awt.Component.processMouseEvent(Unknown Source)
	at java.desktop/javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.desktop/java.awt.Component.processEvent(Unknown Source)
	at java.desktop/java.awt.Container.processEvent(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
	at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:696)
	at com.intellij.ide.IdeEventQueue.dispatchMouseEvent(IdeEventQueue.kt:635)
	at com.intellij.ide.IdeEventQueue._dispatchEvent$lambda$14(IdeEventQueue.kt:581)
	at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runWriteIntentReadAction(AnyThreadWriteThreadingSupport.kt:84)
	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:581)
	at com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:73)
	at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1$1.compute(IdeEventQueue.kt:357)
	at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1$1.compute(IdeEventQueue.kt:356)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:843)
	at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.invoke(IdeEventQueue.kt:356)
	at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.invoke(IdeEventQueue.kt:351)
	at com.intellij.ide.IdeEventQueueKt$performActivity$runnableWithWIL$1.invoke$lambda$0(IdeEventQueue.kt:1035)
	at com.intellij.openapi.application.WriteIntentReadAction.lambda$run$0(WriteIntentReadAction.java:24)
	at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runWriteIntentReadAction(AnyThreadWriteThreadingSupport.kt:84)
	at com.intellij.openapi.application.impl.ApplicationImpl.runWriteIntentReadAction(ApplicationImpl.java:910)
	at com.intellij.openapi.application.WriteIntentReadAction.compute(WriteIntentReadAction.java:55)
	at com.intellij.openapi.application.WriteIntentReadAction.run(WriteIntentReadAction.java:23)
	at com.intellij.ide.IdeEventQueueKt$performActivity$runnableWithWIL$1.invoke(IdeEventQueue.kt:1035)
	at com.intellij.ide.IdeEventQueueKt$performActivity$runnableWithWIL$1.invoke(IdeEventQueue.kt:1035)
	at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:1036)
	at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:106)
	at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:1036)
	at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$10(IdeEventQueue.kt:351)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:397)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.desktop/java.awt.WaitDispatchSupport$2.run(Unknown Source)
	at java.desktop/java.awt.WaitDispatchSupport$4.run(Unknown Source)
	at java.desktop/java.awt.WaitDispatchSupport$4.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at java.desktop/java.awt.WaitDispatchSupport.enter(Unknown Source)
	at java.desktop/java.awt.Dialog.show(Unknown Source)
	at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl$MyDialog.show(DialogWrapperPeerImpl.java:887)
	at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl.show(DialogWrapperPeerImpl.java:469)
	at com.intellij.openapi.ui.DialogWrapper.doShow(DialogWrapper.java:1763)
	at com.intellij.openapi.ui.DialogWrapper.show(DialogWrapper.java:1712)
	at com.android.tools.idea.npw.module.ChooseModuleTypeWizard.show(ChooseModuleTypeWizard.kt:198)
	at com.android.tools.idea.npw.module.ChooseModuleTypeWizardKt.showDefaultWizard(ChooseModuleTypeWizard.kt:291)
	at com.android.tools.idea.npw.actions.AndroidNewModuleAction.actionPerformed(AndroidNewModuleAction.kt:53)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.doPerformActionOrShowPopup(ActionUtil.kt:345)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAwareWithCallbacks$lambda$4(ActionUtil.kt:316)
	at com.intellij.openapi.actionSystem.impl.ActionManagerImpl.performWithActionCallbacks(ActionManagerImpl.kt:1168)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAwareWithCallbacks(ActionUtil.kt:315)
	at com.intellij.platform.ide.menu.MacNativeActionMenuItemKt.performAction$lambda$1(MacNativeActionMenuItem.kt:134)
	at com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:231)
	at com.intellij.platform.ide.menu.MacNativeActionMenuItemKt.performAction(MacNativeActionMenuItem.kt:128)
	at com.intellij.platform.ide.menu.MacNativeActionMenuItemKt.access$performAction(MacNativeActionMenuItem.kt:1)
	at com.intellij.platform.ide.menu.MacNativeActionMenuItem.menuItemPeer$lambda$3$lambda$2$lambda$1$lambda$0(MacNativeActionMenuItem.kt:51)
	at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:114)
	at com.intellij.openapi.application.TransactionGuardImpl.performUserActivity(TransactionGuardImpl.java:95)
	at com.intellij.platform.ide.menu.MacNativeActionMenuItem.menuItemPeer$lambda$3$lambda$2$lambda$1(MacNativeActionMenuItem.kt:50)
	at java.desktop/java.awt.event.InvocationEvent.dispatch$$$capture(Unknown Source)
	at java.desktop/java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at --- Async.Stack.Trace --- (captured by IntelliJ IDEA debugger)
	at java.desktop/java.awt.event.InvocationEvent.<init>(Unknown Source)
	at java.desktop/java.awt.event.InvocationEvent.<init>(Unknown Source)
	at java.desktop/java.awt.EventQueue.invokeLater(Unknown Source)
	at com.intellij.platform.ide.menu.MacNativeActionMenuItem.menuItemPeer$lambda$3$lambda$2(MacNativeActionMenuItem.kt:48)
	at com.intellij.ui.mac.screenmenu.MenuItem.handleAction(MenuItem.java:142)
2025-01-20 13:53:53,111 [  11091] SEVERE - #com.android.tools.idea.npw.module.ChooseModuleTypeWizard - Android Studio Ladybug Feature Drop | 2024.2.2  Build #AI-242.23726.103.2422.12816248
2025-01-20 13:53:53,112 [  11092] SEVERE - #com.android.tools.idea.npw.module.ChooseModuleTypeWizard - JDK: 21.0.4; VM: OpenJDK 64-Bit Server VM; Vendor: JetBrains s.r.o.
2025-01-20 13:53:53,112 [  11092] SEVERE - #com.android.tools.idea.npw.module.ChooseModuleTypeWizard - OS: Mac OS X
2025-01-20 13:53:53,112 [  11092] SEVERE - #com.android.tools.idea.npw.module.ChooseModuleTypeWizard - Plugin to blame: CodeCodeGenerator version: 1.0-SNAPSHOT
2025-01-20 13:53:53,112 [  11092] SEVERE - #com.android.tools.idea.npw.module.ChooseModuleTypeWizard - Last Action: NewModule
2025-01-20 13:53:54,061 [  12041]   WARN - #com.android.tools.idea.progress.RepoProgressIndicatorAdapter - Errors during XML parse:
2025-01-20 13:53:54,061 [  12041]   WARN - #com.android.tools.idea.progress.RepoProgressIndicatorAdapter - Additionally, the fallback loader failed to parse the XML.
2025-01-20 13:53:54,158 [  12138]   WARN - #com.android.tools.idea.progress.RepoProgressIndicatorAdapter - Errors during XML parse:
2025-01-20 13:53:54,158 [  12138]   WARN - #com.android.tools.idea.progress.RepoProgressIndicatorAdapter - Additionally, the fallback loader failed to parse the XML.
0

Sorry for delay. These issues seem related to https://youtrack.jetbrains.com/issue/MP-7024, please follow it for updates.

0

Hello Yann, please tell me, I saw that the problem was fixed, but I still don't understand what I need to do to make everything work for me?
My goal is to make my plugin work on the current release version of Android Studio Ladybug Feature Drop (2024.2.2.13).
I add another item to the module generation menu (New Module in Android Studio) and if i use this settings:

plugins {
    id("java")
    id("org.jetbrains.kotlin.jvm") version "1.9.25"
    id("org.jetbrains.intellij.platform") version "2.2.1"
}

group = "ru.test.plugin"
version = "1.0-SNAPSHOT"

repositories {
    mavenCentral()
    intellijPlatform {
        defaultRepositories()
    }
}

dependencies {
    intellijPlatform {
        androidStudio("2024.3.2.4")
        plugin("org.jetbrains.android:243.23654.117")
    }
}

tasks {

    // Set the JVM compatibility versions
    withType<JavaCompile> {
        sourceCompatibility = "17"
        targetCompatibility = "17"
    }
    withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile> {
        kotlinOptions.jvmTarget = "17"
    }

    patchPluginXml {
        sinceBuild.set("232")
        untilBuild.set("243.*")
    }

    signPlugin {
        certificateChain.set(System.getenv("CERTIFICATE_CHAIN"))
        privateKey.set(System.getenv("PRIVATE_KEY"))
        password.set(System.getenv("PRIVATE_KEY_PASSWORD"))
    }

    publishPlugin {
        token.set(System.getenv("PUBLISH_TOKEN"))
    }
}

I get the same error again:

com.intellij.ide.plugins.EssentialPluginMissingException: Missing essential plugins: com.android.tools.design, org.jetbrains.android
    at com.intellij.ide.plugins.PluginManagerCore.checkEssentialPluginsAreAvailable(PluginManagerCore.kt:598)
    at com.intellij.ide.plugins.PluginManagerCore.initializePlugins(PluginManagerCore.kt:671)
    at com.intellij.ide.plugins.PluginManagerCore$initializeAndSetPlugins$2.invokeSuspend(PluginManagerCore.kt:870)
    at com.intellij.ide.plugins.PluginManagerCore$initializeAndSetPlugins$2.invoke(PluginManagerCore.kt)
    at com.intellij.ide.plugins.PluginManagerCore$initializeAndSetPlugins$2.invoke(PluginManagerCore.kt)
    at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:62)
    at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:163)
    at kotlinx.coroutines.BuildersKt.withContext(Unknown Source)
    at com.intellij.platform.diagnostic.telemetry.impl.TracerKt.span(tracer.kt:56)
    at com.intellij.idea.Main$startApp$2$1$1.span(Main.kt:100)
    at com.intellij.diagnostic.CoroutineTracerShim.span$default(CoroutineTracerShim.kt:31)
    at com.intellij.ide.plugins.PluginManagerCore.initializeAndSetPlugins$intellij_platform_core_impl(PluginManagerCore.kt:868)
    at com.intellij.ide.plugins.PluginDescriptorLoader$scheduleLoading$pluginSetDeferred$1.invokeSuspend(PluginDescriptorLoader.kt:403)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
    at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:608)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:873)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:763)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:750)

-----
JRE: 21.0.5+-12932927-b750.29 aarch64 (JetBrains s.r.o.)
/Users/username/.gradle/caches/8.12.1/transforms/dbb04e98eb837c8c2bd32f763fc090b5/transformed/android-studio-2024.3.2.4-mac_arm/jbr/Contents/Home

Please Help!

0

This will require a new release of IntelliJ Platform Gradle Plugin to incorporate the changes/fixes done in the structure-library which is responsible for locating bundled plugins.

0

Yann, thanks for the reply.

I need to fix my plugin for Android Studio before February 16, please help.

I used the snapshot version id("org.jetbrains.intellij.platform") version "2.2.2-SNAPSHOT", which is located here: https://oss.sonatype.org/#nexus-search;quick~org.jetbrains.intellij.platform , last updated on February 10. Is there a fix in this snapshot?
Because using the snapshot version, I get the same error, please help.

Can I somehow build a version of the plugin with these changes myself: https://github.com/JetBrains/intellij-plugin-verifier/pull/1214 and apply them to my project? Or maybe there is some other solution?

I really ask for help

0

Hey, Vladimir!

The issue is caused by the malformed `product-info.json` file delivered bundled within the Android Studio.
I've recently contacted the responsible team on Google's side, and they addressed and released the fix starting from Android Studio 243.23654.117.2432.13000375, which is: Android Studio Meerkat Feature Drop Canary 4

On our side, there was a workaround introduced  in the Plugin Veridier with https://github.com/JetBrains/intellij-plugin-verifier/pull/1214

The IntelliJ Platform Gradle Plugin relies on artifacts published from the above project, which have yet to be released.
Releasing the IntelliJ Platform Gradle Plugin 2.2.2 (or 2.3.0) by the end of the week is not possible, but I could check if we can speed up the PV release and go for another 2.2.2-SNAPSHOT on Thursday or Friday.

0

Jakub thanks for the answer!
And does the fix from Google really solve the problem?
Because as I wrote earlier, using these settings:

dependencies {
    intellijPlatform {
        androidStudio("2024.3.2.4")
        plugin("org.jetbrains.android:243.23654.117")
    }
}

I get the same error (I posted a detailed log above):

 WARN - #c.i.i.p.PluginManager - Problems found loading plugins:
  The Android (id=org.jetbrains.android, path=~/IdeaProjects/MyCodeGenerator1/build/idea-sandbox/AI-AI-243.23654.117.2432.13021186/plugins/android, version=243.23654.117) plugin Plugin 'Android' requires plugin 'org.jetbrains.idea.gradle.dsl' to be installed

 

0

Ok, everything has been released today. Please switch to the IntelliJ Platform Gradle Plugin 2.2.2-SNAPSHOT.
With that version enabled, you can correctly resolve the Android plugin as a bundled one. Note that if you append a version, like pluginId:version, it's resolved from JetBrains Marketplace instead!

So again – switch to the latest snapshot (see https://plugins.jetbrains.com/docs/intellij/tools-intellij-platform-gradle-plugin.html#snapshot-release), and use:

dependencies {
    intellijPlatform {
        androidStudio("2024.3.2.4")
        plugin("org.jetbrains.android")
    }
}
0

Jakub, thank you very much to you and your team! I finally got it working, I am very grateful to you for your help.
The only thing is that I used bundledPlugin instead of plugin, because when specifying plugin, you need to specify the version.

 

id("org.jetbrains.intellij.platform") version "2.2.2-SNAPSHOT"
...
dependencies {
    intellijPlatform {
        androidStudio("2024.2.2.13")
        bundledPlugin("org.jetbrains.android")
    }
}
0

Please sign in to leave a comment.