I have a NoctuleApplicationSettingsRemoteInfoProvider, which syncs several configurations.
The exception below was shown when I was testing in split mode, once for frontend and once for the backend, as far as I understand.
What does this exception mean and how can I fix it?
The settings in question are registered as a <applicationSettings .../> and is configured with these annotations:
@State(
name = "NoctuleLocalApplicationSettings",
storages = [Storage("noctule-local.xml", roamingType = RoamingType.LOCAL)]
)
@Service(Service.Level.APP)
class ...
The sync is configured like this:
"NoctuleLocalApplicationSettings" to RemoteSettingInfo(direction = RemoteSettingInfo.Direction.InitialFromBackend),
Tested with 2025.3.
Update: Seems to be caused by RoamingType.LOCAL, unsure if it’s only with 2025.3.
java.lang.Throwable: Failed to choose a storage for NoctuleLocalApplicationSettings settings component
at com.intellij.openapi.diagnostic.Logger.error(Logger.java:375)
at com.jetbrains.rd.platform.codeWithMe.settings.RdInitialSettingsSynchronizer.loadSerializedState(RdInitialSettingsSynchronizer.kt:181)
at com.jetbrains.rd.platform.codeWithMe.settings.RdInitialSettingsSynchronizer.sendSettingsForComponent(RdInitialSettingsSynchronizer.kt:158)
at com.jetbrains.rd.platform.codeWithMe.settings.RdInitialSettingsSynchronizer.access$sendSettingsForComponent(RdInitialSettingsSynchronizer.kt:44)
at com.jetbrains.rd.platform.codeWithMe.settings.RdInitialSettingsSynchronizer$sendInitialSettings$1.extensionAdded$lambda$0$0(RdInitialSettingsSynchronizer.kt:62)
at com.intellij.codeWithMe.ClientId$Companion.withExplicitClientId(ClientId.kt:253)
at com.jetbrains.rd.platform.codeWithMe.settings.RdInitialSettingsSynchronizer$sendInitialSettings$1.extensionAdded(RdInitialSettingsSynchronizer.kt:60)
at com.jetbrains.rd.platform.codeWithMe.settings.RdInitialSettingsSynchronizer$sendInitialSettings$1.extensionAdded(RdInitialSettingsSynchronizer.kt:57)
at com.intellij.openapi.extensions.impl.ExtensionPointImpl.notifyListeners(ExtensionPointImpl.kt:671)
at com.intellij.openapi.extensions.impl.ExtensionPointImpl.addExtensionPointListener(ExtensionPointImpl.kt:696)
at com.jetbrains.rd.platform.codeWithMe.settings.RdInitialSettingsSynchronizer.sendInitialSettings$intellij_platform_split(RdInitialSettingsSynchronizer.kt:57)
at com.jetbrains.rd.platform.codeWithMe.settings.RdSettingsStorageService$bindWithModel$2.invokeSuspend(RdSettingsStorageService.kt:185)
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)