-
Notifications
You must be signed in to change notification settings - Fork 329
Description
What happened
When opening a Flutter project in IntelliJ IDEA 2025.3, the Flutter plugin crashes during IDE startup.
The exception is thrown from FlutterInitializer.ensureAndroidSdk() with:
“IllegalStateException: Background write action is not permitted on this thread”.
After this happens, the Flutter plugin is only partially initialized:
- Flutter projects open correctly
- Devices are detected
- Manual Hot Reload works
- Hot Reload on save never triggers
The error happens consistently on IDE startup before any user interaction.
Version information
IntelliJ IDEA 2025.3 • Flutter plugin io.flutter 88.2.0 • Dart plugin 500.0.0
Flutter 3.38.1 • channel stable • https://github.com/flutter/flutter.git
Framework • revision b45fa18946 (4 weeks ago) • 2025-11-12 22:09:06 -0600
Engine • hash 78c3c9557e50ee7c676fa37562558c59efd8406a (revision b5990e5ccc) (30 days ago) • 2025-11-12 21:08:24.000Z
Tools • Dart 3.10.0 • DevTools 2.51.1
Exception
null
java.lang.IllegalStateException: Background write action is not permitted on this thread. Consider using `backgroundWriteAction`, or switch to EDT
at com.intellij.openapi.application.impl.ApplicationImpl.checkWriteActionAllowedOnCurrentThread(ApplicationImpl.java:1120)
at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:1127)
at io.flutter.utils.OpenApiUtils.safeRunWriteAction(OpenApiUtils.java:94)
at io.flutter.FlutterInitializer.ensureAndroidSdk(FlutterInitializer.java:443)
at io.flutter.FlutterInitializer.executeProjectStartup(FlutterInitializer.java:122)
at io.flutter.FlutterProjectActivity.execute$suspendImpl(FlutterProjectActivity.kt:21)
at io.flutter.FlutterProjectActivity.execute(FlutterProjectActivity.kt)
at com.intellij.ide.startup.impl.StartupManagerImplKt$launchActivity$1.invokeSuspend(StartupManagerImpl.kt:511)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:34)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:610)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runDefaultDispatcherTask(CoroutineScheduler.kt:1194)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:906)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:775)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:762)
Flutter log
2025-12-13 08:00:06 io.flutter.jxbrowser.JxBrowserManager [INFO ] bingoo: Installing JxBrowser
2025-12-13 08:00:06 io.flutter.FlutterInitializer [INFO ] Executing Flutter plugin startup for project: bingoo
2025-12-13 08:00:06 io.flutter.FlutterInitializer [INFO ] Flutter module has been found for project: bingoo
2025-12-13 08:00:06 io.flutter.FlutterInitializer [SEVERE ] Background write action is not permitted on this thread. Consider using `backgroundWriteAction`, or switch to EDT
java.lang.IllegalStateException: Background write action is not permitted on this thread. Consider using `backgroundWriteAction`, or switch to EDT
at com.intellij.openapi.application.impl.ApplicationImpl.checkWriteActionAllowedOnCurrentThread(ApplicationImpl.java:1120)
at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:1127)
at io.flutter.utils.OpenApiUtils.safeRunWriteAction(OpenApiUtils.java:94)
at io.flutter.FlutterInitializer.ensureAndroidSdk(FlutterInitializer.java:443)
at io.flutter.FlutterInitializer.executeProjectStartup(FlutterInitializer.java:122)
at io.flutter.FlutterProjectActivity.execute$suspendImpl(FlutterProjectActivity.kt:21)
at io.flutter.FlutterProjectActivity.execute(FlutterProjectActivity.kt)
at com.intellij.ide.startup.impl.StartupManagerImplKt$launchActivity$1.invokeSuspend(StartupManagerImpl.kt:511)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:34)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:610)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runDefaultDispatcherTask(CoroutineScheduler.kt:1194)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:906)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:775)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:762)
2025-12-13 08:00:06 io.flutter.FlutterInitializer [SEVERE ] IntelliJ IDEA 2025.3 Build #IU-253.28294.334
2025-12-13 08:00:06 io.flutter.FlutterInitializer [SEVERE ] JDK: 21.0.8; VM: OpenJDK 64-Bit Server VM; Vendor: JetBrains s.r.o.
2025-12-13 08:00:06 io.flutter.FlutterInitializer [SEVERE ] OS: Mac OS X
2025-12-13 08:00:06 io.flutter.FlutterInitializer [SEVERE ] Plugin to blame: Flutter version: 88.2.0
2025-12-13 08:00:06 io.flutter.FlutterInitializer [SEVERE ] Last Action:
2025-12-13 08:00:06 io.flutter.sdk.FlutterCommand [INFO ] flutter [--no-color, config, --machine]
2025-12-13 08:00:07 io.flutter.sdk.FlutterSdk [INFO ] flutter config --machine (481ms)
2025-12-13 08:00:10 io.flutter.run.daemon.DeviceDaemon [INFO ] starting Flutter device daemon #1: flutter daemon
2025-12-13 08:00:10 io.flutter.run.daemon.DeviceDaemon [INFO ] flutter device daemon #1: Device daemon started.