Open kozlice opened 6 years ago
I'm not able to reproduce the problem locally. When I run an install of just PHPStorm and the plugin, only CLASSES
and SOURCES
root types are available, so the 3rd condition never gets called.
I'm assuming that you have other plugins installed that must introduce a 3rd root type and since it doesn't match CLASSES
or SOURCES
, it is tested against JavadocOrderRootType.getInstance()
, which is what causes the error.
I can fix it the same at in the Elixir SDK: calculate the documentation root type indirectly and don't use JavadocOrderRootType.getInstance()
in Small IDEs like PHPStorm.
@KronicDeth Thanks for looking into this. I have a bunch of other plugins indeed. I've updated to 7.2.1, and SDK can now be added to list & chosen for a project. An error still occurs, though (trace looks almost the same as in first comment):
Root type class com.intellij.openapi.roots.JavadocOrderRootType not found. All roots: [Root LIBRARY_FILE]
java.lang.AssertionError: Root type class com.intellij.openapi.roots.JavadocOrderRootType not found. All roots: [Root LIBRARY_FILE]
at com.intellij.openapi.roots.OrderRootType.getOrderRootType(OrderRootType.java:126)
at com.intellij.openapi.roots.JavadocOrderRootType.getInstance(JavadocOrderRootType.java:35)
at org.elixir_lang.sdk.erlang_dependent.Type.isRootTypeApplicable(Type.java:70)
at org.elixir_lang.facet.sdk.Editor.showTabForType(Editor.kt:112)
at org.elixir_lang.facet.sdk.Editor.createMainPanel(Editor.kt:83)
at org.elixir_lang.facet.sdk.Editor.<init>(Editor.kt:64)
at org.elixir_lang.facet.sdks.Configurable$updateSdkPanel$$inlined$let$lambda$1.apply(Configurable.kt:145)
at org.elixir_lang.facet.sdks.Configurable$updateSdkPanel$$inlined$let$lambda$1.apply(Configurable.kt:22)
at java.util.HashMap.computeIfAbsent(HashMap.java:1126)
at org.elixir_lang.facet.sdks.Configurable.updateSdkPanel(Configurable.kt:145)
at org.elixir_lang.facet.sdks.Configurable.access$updateSdkPanel(Configurable.kt:22)
at org.elixir_lang.facet.sdks.Configurable$addListeners$1.valueChanged(Configurable.kt:115)
at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:184)
at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:164)
at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:211)
at javax.swing.DefaultListSelectionModel.changeSelection(DefaultListSelectionModel.java:405)
at javax.swing.DefaultListSelectionModel.changeSelection(DefaultListSelectionModel.java:415)
at javax.swing.DefaultListSelectionModel.setSelectionInterval(DefaultListSelectionModel.java:459)
at javax.swing.JList.setSelectedIndex(JList.java:2210)
at javax.swing.JList.setSelectedValue(JList.java:2360)
at org.elixir_lang.facet.sdks.Configurable.addCreatedSdk(Configurable.kt:94)
at org.elixir_lang.facet.sdks.Configurable.access$addCreatedSdk(Configurable.kt:22)
at org.elixir_lang.facet.sdks.Configurable$addSdk$1.consume(Configurable.kt:121)
at org.elixir_lang.facet.sdks.Configurable$addSdk$1.consume(Configurable.kt:22)
at com.intellij.openapi.roots.ui.configuration.projectRoot.ProjectSdksModel.doAdd(ProjectSdksModel.java:311)
at com.intellij.openapi.roots.ui.configuration.projectRoot.ProjectSdksModel.a(ProjectSdksModel.java:297)
at com.intellij.openapi.roots.ui.configuration.projectRoot.ProjectSdksModel.a(ProjectSdksModel.java:273)
at com.intellij.openapi.projectRoots.impl.DependentSdkType.a(DependentSdkType.java:87)
at com.intellij.openapi.projectRoots.impl.SdkConfigurationUtil.a(SdkConfigurationUtil.java:297)
at com.intellij.ui.mac.MacPathChooserDialog.choose(MacPathChooserDialog.java:174)
at com.intellij.openapi.fileChooser.FileChooser.chooseFiles(FileChooser.java:114)
at com.intellij.openapi.fileChooser.FileChooser.chooseFiles(FileChooser.java:91)
at com.intellij.openapi.projectRoots.impl.SdkConfigurationUtil.selectSdkHome(SdkConfigurationUtil.java:294)
at com.intellij.openapi.projectRoots.impl.DependentSdkType.createSdkOfType(DependentSdkType.java:82)
at com.intellij.openapi.projectRoots.impl.DependentSdkType.showCustomCreateUI(DependentSdkType.java:69)
at com.intellij.openapi.projectRoots.SdkType.showCustomCreateUI(SdkType.java:258)
at com.intellij.openapi.roots.ui.configuration.projectRoot.ProjectSdksModel.doAdd(ProjectSdksModel.java:273)
at com.intellij.openapi.roots.ui.configuration.projectRoot.ProjectSdksModel.doAdd(ProjectSdksModel.java:267)
at org.elixir_lang.facet.sdks.Configurable.addSdk(Configurable.kt:121)
at org.elixir_lang.facet.sdks.Configurable.access$addSdk(Configurable.kt:22)
at org.elixir_lang.facet.sdks.Configurable$createComponent$decorator$1.run(Configurable.kt:55)
at org.elixir_lang.facet.sdks.Configurable$createComponent$decorator$1.run(Configurable.kt:54)
at com.intellij.ui.ToolbarDecorator$2.doAdd(ToolbarDecorator.java:440)
at com.intellij.ui.CommonActionsPanel$Buttons.performAction(CommonActionsPanel.java:72)
at com.intellij.ui.CommonActionsPanel$MyActionButton.actionPerformed(CommonActionsPanel.java:263)
at com.intellij.openapi.actionSystem.ex.ActionUtil$1.run(ActionUtil.java:220)
at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:237)
at com.intellij.openapi.actionSystem.impl.ActionButton.a(ActionButton.java:193)
at com.intellij.openapi.actionSystem.impl.ActionButton.a(ActionButton.java:151)
at com.intellij.openapi.actionSystem.impl.ActionButton.processMouseEvent(ActionButton.java:344)
at java.awt.Component.processEvent(Component.java:6306)
at java.awt.Container.processEvent(Container.java:2237)
at java.awt.Component.dispatchEventImpl(Component.java:4897)
at java.awt.Container.dispatchEventImpl(Container.java:2295)
at java.awt.Component.dispatchEvent(Component.java:4719)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4889)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4526)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4467)
at java.awt.Container.dispatchEventImpl(Container.java:2281)
at java.awt.Window.dispatchEventImpl(Window.java:2746)
at java.awt.Component.dispatchEvent(Component.java:4719)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:764)
at java.awt.EventQueue.access$500(EventQueue.java:98)
at java.awt.EventQueue$3.run(EventQueue.java:715)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
at java.awt.EventQueue$4.run(EventQueue.java:737)
at java.awt.EventQueue$4.run(EventQueue.java:735)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:734)
at com.intellij.ide.IdeEventQueue.d(IdeEventQueue.java:822)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:646)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:366)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:109)
at java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:190)
at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:235)
at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:233)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:233)
at java.awt.Dialog.show(Dialog.java:1084)
at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl$MyDialog.show(DialogWrapperPeerImpl.java:734)
at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl.show(DialogWrapperPeerImpl.java:456)
at com.intellij.openapi.ui.DialogWrapper.invokeShow(DialogWrapper.java:1696)
at com.intellij.openapi.ui.DialogWrapper.show(DialogWrapper.java:1645)
at com.intellij.openapi.options.newEditor.SettingsDialog.a(SettingsDialog.java:83)
at com.intellij.openapi.application.TransactionGuardImpl.a(TransactionGuardImpl.java:88)
at com.intellij.openapi.application.TransactionGuardImpl.submitTransactionAndWait(TransactionGuardImpl.java:153)
at com.intellij.openapi.options.newEditor.SettingsDialog.show(SettingsDialog.java:83)
at com.intellij.ide.actions.ShowSettingsUtilImpl.showSettingsDialog(ShowSettingsUtilImpl.java:97)
at com.intellij.ide.actions.ShowSettingsAction.perform(ShowSettingsAction.java:63)
at com.intellij.ide.MacOSApplicationProvider$Worker.a(MacOSApplicationProvider.java:118)
at com.intellij.ide.MacOSApplicationProvider$Worker.b(MacOSApplicationProvider.java:212)
at com.intellij.openapi.application.TransactionGuardImpl.a(TransactionGuardImpl.java:88)
at com.intellij.openapi.application.TransactionGuardImpl.b(TransactionGuardImpl.java:74)
at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.a(LaterInvocator.java:424)
at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:407)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:762)
at java.awt.EventQueue.access$500(EventQueue.java:98)
at java.awt.EventQueue$3.run(EventQueue.java:715)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:732)
at com.intellij.ide.IdeEventQueue.d(IdeEventQueue.java:822)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:650)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:366)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
And then, autosuggestion fails (e.g. type System.
and wait a little):
Argument for @NotNull parameter 'maxScope' of org/elixir_lang/psi/impl/ElixirPsiImplUtil.maybeModularNameToModular must not be null
java.lang.IllegalArgumentException: Argument for @NotNull parameter 'maxScope' of org/elixir_lang/psi/impl/ElixirPsiImplUtil.maybeModularNameToModular must not be null
at org.elixir_lang.psi.impl.ElixirPsiImplUtil.$$$reportNull$$$0(ElixirPsiImplUtil.java)
at org.elixir_lang.psi.impl.ElixirPsiImplUtil.maybeModularNameToModular(ElixirPsiImplUtil.java)
at org.elixir_lang.code_insight.completion.provider.CallDefinitionClause.addCompletions(CallDefinitionClause.java:106)
at com.intellij.codeInsight.completion.CompletionProvider.addCompletionVariants(CompletionProvider.java:36)
at com.intellij.codeInsight.completion.CompletionContributor.fillCompletionVariants(CompletionContributor.java:152)
at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributors(CompletionService.java:83)
at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:149)
at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:142)
at com.intellij.codeInsight.template.impl.LiveTemplateCompletionContributor$2.addCompletions(LiveTemplateCompletionContributor.java:90)
at com.intellij.codeInsight.completion.CompletionProvider.addCompletionVariants(CompletionProvider.java:36)
at com.intellij.codeInsight.completion.CompletionContributor.fillCompletionVariants(CompletionContributor.java:152)
at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributors(CompletionService.java:83)
at com.intellij.codeInsight.completion.CompletionService.performCompletion(CompletionService.java:112)
at com.intellij.codeInsight.completion.CompletionProgressIndicator.a(CompletionProgressIndicator.java:839)
at com.intellij.codeInsight.completion.CompletionProgressIndicator.access$600(CompletionProgressIndicator.java:92)
at com.intellij.codeInsight.completion.CompletionProgressIndicator$1CalculateItems.run(CompletionProgressIndicator.java:821)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1127)
at com.intellij.codeInsight.completion.AsyncCompletion.tryReadOrCancel(CompletionThreading.java:181)
at com.intellij.codeInsight.completion.CompletionProgressIndicator.b(CompletionProgressIndicator.java:832)
at com.intellij.codeInsight.completion.AsyncCompletion.a(CompletionThreading.java:108)
at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:157)
at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:543)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:488)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:94)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:144)
at com.intellij.codeInsight.completion.AsyncCompletion.a(CompletionThreading.java:104)
at com.intellij.openapi.application.impl.ApplicationImpl$1.run(ApplicationImpl.java:315)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
After an update I was able to configure Internal Erlang SDK, but not Elixir SDK: an error occurs.
Elixir plugin v7.2.0 PhpStorm 2017.3.1 Build #PS-173.3942.32, built on December 12, 2017 JRE: 1.8.0_152-release-1024-b8 x86_64 JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o Mac OS X 10.13.2
Elixir v1.5.3 and Erlang v20.2.2, both installed via Homebrew.
Stacktrace: