opwvhk / avro-schema-support

Extend IntelliJ, PyCharm and other JetBrains IDEs to more easily work with Avro schemata and protocols in both IDL and JSON format.
https://plugins.jetbrains.com/plugin/15728-avro-schema-support
MIT License
19 stars 2 forks source link

NPE in com.intellij.lang.javascript.ecmascript6.TypeScriptUtil.getTypeScriptCompilerFolderFile inside call to com.intellij.psi.search.FileTypeIndex.processFiles #70

Closed opwvhk closed 1 year ago

opwvhk commented 1 year ago

Crash Report

What happened

(The user did not submit additional information)

Context information

Exception

java.lang.RuntimeException: jar file cannot be null
    at com.intellij.lang.javascript.ecmascript6.TypeScriptUtil.getTypeScriptCompilerFolderFile(TypeScriptUtil.java:904)
    at com.intellij.lang.javascript.library.JSCorePredefinedLibrariesProvider.getAndCacheFromCompilerFolder(JSCorePredefinedLibrariesProvider.java:268)
    at com.intellij.lang.javascript.library.JSCorePredefinedLibrariesProvider.getLibFiles(JSCorePredefinedLibrariesProvider.java:254)
    at com.intellij.lang.javascript.library.JSCorePredefinedLibrariesProvider.getRequiredLibraryFilesForResolve(JSCorePredefinedLibrariesProvider.java:193)
    at com.intellij.lang.javascript.library.JSPredefinedLibrariesData.create(JSPredefinedLibrariesData.java:114)
    at com.intellij.lang.javascript.library.JSPredefinedLibraryManager.lambda$new$0(JSPredefinedLibraryManager.java:25)
    at com.intellij.openapi.util.ClearableLazyValue$2.compute(ClearableLazyValue.java:26)
    at com.intellij.openapi.util.ClearableLazyValue.getValue(ClearableLazyValue.java:39)
    at com.intellij.openapi.util.AtomicClearableLazyValue.getValue(AtomicClearableLazyValue.java:9)
    at com.intellij.lang.javascript.library.JSPredefinedLibraryManager.getLibraryFiles(JSPredefinedLibraryManager.java:39)
    at com.intellij.lang.javascript.index.JSIndexedRootProvider.getPredefinedLibraryFiles(JSIndexedRootProvider.java:29)
    at com.intellij.webcore.libraries.ScriptingIndexableSetContributor.getAdditionalProjectRootsToIndex(ScriptingIndexableSetContributor.java:20)
    at com.intellij.util.indexing.IndexableSetContributor.getProjectRootsToIndex(IndexableSetContributor.java:33)
    at com.intellij.util.indexing.AdditionalIndexableFileSet.collectFilesAndDirectories(AdditionalIndexableFileSet.java:50)
    at com.intellij.util.indexing.AdditionalIndexableFileSet.lambda$new$3(AdditionalIndexableFileSet.java:36)
    at com.intellij.util.CachedValueImpl.doCompute(CachedValueImpl.java:22)
    at com.intellij.util.CachedValueBase.lambda$getValueWithLock$3(CachedValueBase.java:227)
    at com.intellij.util.CachedValueBase.computeData(CachedValueBase.java:42)
    at com.intellij.util.CachedValueBase.lambda$getValueWithLock$4(CachedValueBase.java:227)
    at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
    at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
    at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
    at com.intellij.util.CachedValueBase.getValueWithLock(CachedValueBase.java:228)
    at com.intellij.util.CachedValueImpl.getValue(CachedValueImpl.java:33)
    at com.intellij.util.indexing.AdditionalIndexableFileSet.isInSet(AdditionalIndexableFileSet.java:61)
    at com.intellij.util.indexing.roots.AdditionalFilesContributor$getOwnFilePredicate$1.invoke(standardContributors.kt:117)
    at com.intellij.util.indexing.roots.AdditionalFilesContributor$getOwnFilePredicate$1.invoke(standardContributors.kt:107)
    at com.intellij.util.indexing.roots.AdditionalFilesContributor$sam$java_util_function_Predicate$0.test(standardContributors.kt)
    at com.intellij.util.indexing.FileBasedIndexImpl$5.isInSet(FileBasedIndexImpl.java:280)
    at com.intellij.util.indexing.FileBasedIndexImpl.getContainingProjects(FileBasedIndexImpl.java:1793)
    at com.intellij.util.indexing.FileBasedIndexImpl.lambda$ensureFileBelongsToIndexableFilter$33(FileBasedIndexImpl.java:1945)
    at com.intellij.util.indexing.projectFilter.IncrementalProjectIndexableFilesFilterHolder$addFileId$matchedProjects$2.invoke(ProjectIndexableFilesFilterHolder.kt:78)
    at com.intellij.util.indexing.projectFilter.IncrementalProjectIndexableFilesFilterHolder$addFileId$matchedProjects$2.invoke(ProjectIndexableFilesFilterHolder.kt:47)
    at kotlin.UnsafeLazyImpl.getValue(Lazy.kt:81)
    at com.intellij.util.indexing.projectFilter.IncrementalProjectIndexableFilesFilterHolder$addFileId$$inlined$map$lambda$1.invoke(ProjectIndexableFilesFilterHolder.kt:81)
    at com.intellij.util.indexing.projectFilter.IncrementalProjectIndexableFilesFilterHolder$addFileId$$inlined$map$lambda$1.invoke(ProjectIndexableFilesFilterHolder.kt:47)
    at com.intellij.util.indexing.projectFilter.IncrementalProjectIndexableFilesFilter.ensureFileIdPresent(IncrementalProjectIndexableFilesFilter.kt:25)
    at com.intellij.util.indexing.projectFilter.IncrementalProjectIndexableFilesFilterHolder.addFileId(ProjectIndexableFilesFilterHolder.kt:80)
    at com.intellij.util.indexing.FileBasedIndexImpl.ensureFileBelongsToIndexableFilter(FileBasedIndexImpl.java:1945)
    at com.intellij.util.indexing.FileBasedIndexImpl.scheduleFileForIndexing(FileBasedIndexImpl.java:1875)
    at com.intellij.util.indexing.events.ChangedFilesCollector.lambda$processFilesToUpdateInReadAction$4(ChangedFilesCollector.java:237)
    at com.intellij.util.indexing.events.ChangedFilesCollector.lambda$processFilesInReadAction$5(ChangedFilesCollector.java:261)
    at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeNonCancelableSection$3(CoreProgressManager.java:223)
    at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:683)
    at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:639)
    at com.intellij.openapi.progress.impl.CoreProgressManager.computeInNonCancelableSection(CoreProgressManager.java:238)
    at com.intellij.openapi.progress.impl.CoreProgressManager.executeNonCancelableSection(CoreProgressManager.java:222)
    at com.intellij.util.indexing.events.ChangedFilesCollector.lambda$processFilesInReadAction$6(ChangedFilesCollector.java:260)
    at com.intellij.util.ConcurrencyUtil.withLock(ConcurrencyUtil.java:233)
    at com.intellij.util.indexing.events.ChangedFilesCollector.lambda$processFilesInReadAction$7(ChangedFilesCollector.java:258)
    at com.intellij.util.indexing.events.VfsEventsMerger.processChanges(VfsEventsMerger.java:93)
    at com.intellij.util.indexing.events.ChangedFilesCollector.processFilesInReadAction(ChangedFilesCollector.java:257)
    at com.intellij.util.indexing.events.ChangedFilesCollector.processFilesToUpdateInReadAction(ChangedFilesCollector.java:233)
    at com.intellij.util.indexing.events.ChangedFilesCollector.ensureUpToDate(ChangedFilesCollector.java:193)
    at com.intellij.util.indexing.FileBasedIndexImpl.ensureUpToDate(FileBasedIndexImpl.java:769)
    at com.intellij.util.indexing.FileBasedIndexEx.processExceptions(FileBasedIndexEx.java:292)
    at com.intellij.util.indexing.FileBasedIndexEx.getContainingFilesIterator(FileBasedIndexEx.java:242)
    at com.intellij.psi.search.FileTypeIndex.processFiles(FileTypeIndex.java:51)
    at opwvhk.intellij.avro_idl.language.AvroIdlUtil.findNavigableNamedSchemasInProject(AvroIdlUtil.java:50)
    at opwvhk.intellij.avro_idl.language.AvroIdlChooseByNameContributor.getNames(AvroIdlChooseByNameContributor.java:13)
    at com.intellij.ide.util.gotoByName.ContributorsBasedGotoByModel.processContributorNames(ContributorsBasedGotoByModel.java:132)
    at com.intellij.ide.util.gotoByName.ContributorsBasedGotoByModel$1.processInReadAction(ContributorsBasedGotoByModel.java:83)
    at com.intellij.ide.util.gotoByName.ContributorsBasedGotoByModel$1.processInReadAction(ContributorsBasedGotoByModel.java:77)
    at com.intellij.openapi.application.ReadActionProcessor.lambda$process$0(ReadActionProcessor.java:11)
    at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:941)
    at com.intellij.openapi.application.ReadAction.compute(ReadAction.java:68)
    at com.intellij.openapi.application.ReadActionProcessor.process(ReadActionProcessor.java:11)
    at com.intellij.concurrency.JobLauncherImpl.lambda$invokeConcurrentlyUnderProgress$0(JobLauncherImpl.java:52)
    at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:791)
    at com.intellij.concurrency.JobLauncherImpl.lambda$invokeConcurrentlyUnderProgress$1(JobLauncherImpl.java:52)
    at com.intellij.concurrency.ApplierCompleter.execAndForkSubTasks(ApplierCompleter.java:136)
    at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1154)
    at com.intellij.concurrency.ApplierCompleter.lambda$wrapInReadActionAndIndicator$1(ApplierCompleter.java:92)
    at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$12(CoreProgressManager.java:608)
    at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:683)
    at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:639)
    at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:607)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
    at com.intellij.concurrency.ApplierCompleter.wrapInReadActionAndIndicator(ApplierCompleter.java:104)
    at com.intellij.concurrency.ApplierCompleter.compute(ApplierCompleter.java:86)
    at java.base/java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:754)
    at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373)
    at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182)
    at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655)
    at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622)
    at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165)
Caused by: java.lang.RuntimeException: jar file cannot be null
    at com.intellij.lang.javascript.ecmascript6.TypeScriptUtil.getTypeScriptCompilerFolderFile(TypeScriptUtil.java:898)
    ... 85 more
opwvhk commented 1 year ago

The exception occurs in the IntelliJ Javascript plugin, deep within a call to com.intellij.psi.search.FileTypeIndex.processFiles.

This plugin cannot be the cause of that.