izhangzhihao / intellij-rainbow-brackets

🌈Rainbow Brackets for IntelliJ based IDEs/Android Studio/HUAWEI DevEco Studio/Fleet
https://plugins.jetbrains.com/plugin/10080-rainbow-brackets
GNU General Public License v3.0
4.35k stars 202 forks source link

Error in Webstorm: Accessing invalid virtual file #2710

Closed Spielboerg closed 2 months ago

Spielboerg commented 2 months ago

Have you checked the issues and discussions to ensure there are no duplicates?

Yes

Your programming languages

Javascript & Typescript

Free or paid?

Free users

Expected Behavior

No error is thrown by the IDE.

Current Behavior

An error is thrown with the following stacktrace. It happened after I moved all files to another folder and deleted the folder, represented by the placeholder <my local path to the project>. So it is certainly a very rare case, but maybe it is not too difficult to catch this error so no error is thrown by the IDE.

com.intellij.diagnostic.PluginException: Accessing invalid virtual file: file:///Users/<my local path to the project>; original:1737136; found:-; File.exists()=false [Plugin: izhangzhihao.rainbow.brackets]
    at com.intellij.ui.EditorNotificationsImpl$updateEditors$job$1.invokeSuspend(EditorNotificationsImpl.kt:251)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
    at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:793)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:697)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:684)
Caused by: com.intellij.openapi.vfs.InvalidVirtualFileAccessException: Accessing invalid virtual file: file:///Users//<my local path to the project>; original:1737136; found:-; File.exists()=false
    at com.intellij.openapi.vfs.newvfs.impl.VirtualDirectoryImpl.handleInvalidDirectory(VirtualDirectoryImpl.java:194)
    at com.intellij.openapi.vfs.newvfs.impl.VirtualDirectoryImpl.doFindChild(VirtualDirectoryImpl.java:117)
    at com.intellij.openapi.vfs.newvfs.impl.VirtualDirectoryImpl.findChild(VirtualDirectoryImpl.java:83)
    at com.intellij.openapi.vfs.newvfs.impl.VirtualDirectoryImpl.findChild(VirtualDirectoryImpl.java:535)
    at com.intellij.openapi.vfs.newvfs.impl.VirtualDirectoryImpl.findChild(VirtualDirectoryImpl.java:51)
    at com.intellij.openapi.vfs.VirtualFile.findFileByRelativePath(VirtualFile.java:384)
    at org.angular2.cli.config.AngularProjectImpl.getSourceDir(AngularProject.kt:95)
    at org.angular2.cli.config.AngularProject.proximity$intellij_angularJS(AngularProject.kt:48)
    at org.angular2.cli.config.AngularCliConfigImpl.getProject(AngularCliConfigImpl.kt:48)
    at org.angular2.cli.AngularCliWebSymbolsContextProvider.isEnabled(AngularCliWebSymbolsContextProvider.kt:15)
    at com.intellij.webSymbols.context.impl.WebSymbolsContextDiscoveryKt.webContextProximityFromProviders(WebSymbolsContextDiscovery.kt:322)
    at com.intellij.webSymbols.context.impl.WebSymbolsContextDiscoveryKt.access$webContextProximityFromProviders(WebSymbolsContextDiscovery.kt:1)
    at com.intellij.webSymbols.context.impl.WebSymbolsContextDiscoveryInfo$getProximityFromExtensions$2.invoke$lambda$0(WebSymbolsContextDiscovery.kt:416)
    at com.intellij.psi.impl.PsiCachedValueImpl.doCompute(PsiCachedValueImpl.java:37)
    at com.intellij.util.CachedValueBase.lambda$getValueWithLock$3(CachedValueBase.java:240)
    at com.intellij.util.CachedValueBase.computeData(CachedValueBase.java:43)
    at com.intellij.util.CachedValueBase.lambda$getValueWithLock$4(CachedValueBase.java:240)
    at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:111)
    at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:27)
    at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:66)
    at com.intellij.util.CachedValueBase.getValueWithLock(CachedValueBase.java:241)
    at com.intellij.psi.impl.PsiCachedValueImpl.getValue(PsiCachedValueImpl.java:27)
    at com.intellij.webSymbols.context.impl.WebSymbolsContextDiscoveryInfo.getProximityFromExtensions(WebSymbolsContextDiscovery.kt:418)
    at com.intellij.webSymbols.context.impl.WebSymbolsContextDiscoveryKt$findContextInDirOrFileCached$proximityPerContextFromExtensions$1.invoke(WebSymbolsContextDiscovery.kt:155)
    at com.intellij.webSymbols.context.impl.WebSymbolsContextDiscoveryKt$findContextInDirOrFileCached$proximityPerContextFromExtensions$1.invoke(WebSymbolsContextDiscovery.kt:153)
    at kotlin.sequences.TransformingSequence$iterator$1.next(Sequences.kt:210)
    at kotlin.sequences.FilteringSequence$iterator$1.calcNext(Sequences.kt:170)
    at kotlin.sequences.FilteringSequence$iterator$1.hasNext(Sequences.kt:194)
    at kotlin.collections.MapsKt__MapsKt.putAll(Maps.kt:439)
    at kotlin.collections.MapsKt__MapsKt.toMap(Maps.kt:607)
    at com.intellij.webSymbols.context.impl.WebSymbolsContextDiscoveryKt.findContextInDirOrFileCached(WebSymbolsContextDiscovery.kt:158)
    at com.intellij.webSymbols.context.impl.WebSymbolsContextDiscoveryKt.withContextChangeCheck(WebSymbolsContextDiscovery.kt:346)
    at com.intellij.webSymbols.context.impl.WebSymbolsContextDiscoveryKt.findWebSymbolsContext(WebSymbolsContextDiscovery.kt:87)
    at com.intellij.webSymbols.context.WebSymbolsContext$Companion.get(WebSymbolsContext.kt:35)
    at com.intellij.webSymbols.framework.WebSymbolsFramework$Companion.inLocation(WebSymbolsFramework.kt:40)
    at com.intellij.javascript.web.WebFramework$Companion.forContext(WebFramework.kt:31)
    at com.intellij.javascript.web.html.WebFrameworkHtmlLanguageSubstitutor.getLanguage(WebFrameworkHtmlLanguageSubstitutor.kt:14)
    at com.intellij.psi.LanguageSubstitutors.substituteLanguage(LanguageSubstitutors.java:58)
    at com.intellij.lang.LanguageUtil.getLanguageForPsi(LanguageUtil.java:55)
    at com.intellij.psi.impl.file.impl.FileManagerImpl.createFileViewProvider(FileManagerImpl.java:261)
    at com.intellij.psi.impl.file.impl.FileManagerImpl.findViewProvider(FileManagerImpl.java:192)
    at com.intellij.psi.impl.file.impl.FileManagerImpl.findFile(FileManagerImpl.java:359)
    at com.intellij.psi.impl.PsiManagerImpl.findFile(PsiManagerImpl.java:163)
    at ყশ.ਇપ(Unknown Source)
    at ダサ.ਇપ(Unknown Source)
    at डಕ$ḥఱ.invoke(Unknown Source)
    at ఇଲ.ਇપ(Unknown Source)
    at com.intellij.ui.EditorNotificationsImpl$updateEditors$job$1$2.invokeSuspend(EditorNotificationsImpl.kt:243)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:108)
    at com.intellij.openapi.application.TransactionGuardImpl$1.run(TransactionGuardImpl.java:194)
    at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:843)
    at com.intellij.openapi.application.impl.ApplicationImpl$4.run(ApplicationImpl.java:463)
    at com.intellij.openapi.application.impl.RwLockHolder.runWithEnabledImplicitRead(RwLockHolder.kt:75)
    at com.intellij.openapi.application.impl.RwLockHolder.runWithImplicitRead(RwLockHolder.kt:67)
    at com.intellij.openapi.application.impl.ApplicationImpl.runWithImplicitRead(ApplicationImpl.java:1436)
    at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:82)
    at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:124)
    at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:44)
    at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:792)
    at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:739)
    at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:733)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:761)
    at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:695)
    at com.intellij.ide.IdeEventQueue._dispatchEvent$lambda$12(IdeEventQueue.kt:589)
    at com.intellij.openapi.application.impl.RwLockHolder.runWithoutImplicitRead(RwLockHolder.kt:44)
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:589)
    at com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:72)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:355)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:354)
    at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:793)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:354)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:349)
    at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:1014)
    at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:106)
    at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:1014)
    at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$7(IdeEventQueue.kt:349)
    at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:848)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:391)
    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
    at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:92)

Code snippet for reproduce

No code snippet

Your Environment

WebStorm 2023.3.4 Build #WS-233.14475.40, built on February 14, 2024 You have a perpetual fallback license for this version. Subscription is active until February 1, 2025. Runtime version: 17.0.10+1-b1087.17 aarch64 VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o. macOS 14.3.1 GC: G1 Young Generation, G1 Old Generation Memory: 4096M Cores: 10 Metal Rendering is ON Registry: ide.balloon.shadow.size=0 editor.focus.mode.color.light=415967 editor.focus.mode.color.dark=415967 debugger.new.tool.window.layout=true ide.new.editor.tabs.vertical.borders=true ide.animate.toolwindows=true ide.experimental.ui=true ide.editor.tab.selection.animation=true eslint.additional.file.extensions=svelte Non-Bundled Plugins: String Manipulation (9.12.0) org.sylfra.idea.plugins.linessorter (1.0.1) ru.adelf.idea.dotenv (2024.1) com.mallowigi (94.1.0) zielu.gittoolbox (500.1.11+222) mobi.hsz.idea.gitignore (4.5.2) izhangzhihao.rainbow.brackets (2024.2.1) com.chrisrm.idea.MaterialThemeUI (8.13.2) mdx.js (233.11799.172)

Spielboerg commented 2 months ago

Just for the record, there are many old closed issues with the same type of error: https://github.com/izhangzhihao/intellij-rainbow-brackets/issues?q=is%3Aissue+sort%3Aupdated-desc+Accessing+invalid+virtual+file+is%3Aclosed

izhangzhihao commented 2 months ago

Is simply because this error not caused by this plugin, it's and IDE issue.